From 2213ec41968b38d3580e46b33a436b73a358ca06 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Wed, 22 Feb 2012 21:50:45 -0800 Subject: [PATCH 001/427] Initial import via fedpkg import --- .gitignore | 1 + fedora.ini | 5 + sources | 1 + uwsgi-wiki-doc-v36.txt | 1411 +++++++++++++++++++++++++++++ uwsgi.spec | 241 +++++ uwsgi_fix_rpath.patch | 56 ++ uwsgi_trick_chroot_rpmbuild.patch | 12 + 7 files changed, 1727 insertions(+) create mode 100644 fedora.ini create mode 100644 uwsgi-wiki-doc-v36.txt create mode 100644 uwsgi.spec create mode 100644 uwsgi_fix_rpath.patch create mode 100644 uwsgi_trick_chroot_rpmbuild.patch diff --git a/.gitignore b/.gitignore index e69de29..8438111 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/uwsgi-1.0.4.tar.gz diff --git a/fedora.ini b/fedora.ini new file mode 100644 index 0000000..4f1f839 --- /dev/null +++ b/fedora.ini @@ -0,0 +1,5 @@ +[uwsgi] +inherit = default +embedded_plugins = echo, ping, http +plugins = rack, psgi, python, nagios, fastrouter, admin, python32, ruby19, cache, cgi, rpc, ugreen, greenlet, lua + diff --git a/sources b/sources index e69de29..5dd746e 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +559c8d1fa8274fb45437c277c0c7f121 uwsgi-1.0.4.tar.gz diff --git a/uwsgi-wiki-doc-v36.txt b/uwsgi-wiki-doc-v36.txt new file mode 100644 index 0000000..6416cec --- /dev/null +++ b/uwsgi-wiki-doc-v36.txt @@ -0,0 +1,1411 @@ += uWSGI Documentation (list of options for 1.0) = + +The following list contains a good part (yes, not all, please help improving the doc instead of ranting...) of the uWSGI options in no particular order (even if you will find +the most important/used on top). Every option can be set in all the supported configuration ways (command line args, environment variables, +xml, ini, yaml and LDAP). Some option requires the loading of a plugin, in such case the name of the plugin will be reported in the doc. + +The examples use various style of configuration to force the user to better understand the way uWSGI works. + +If you are new to uWSGI you should probably give a look at the [wiki:Quickstart] and [wiki:Example Examples] sections for real-world-usage-configurations as the following huge list can really hurt you + + +== Little introduction about config styles == + +When choosing a configuration style or when moving from one configuration style to another, check the following rules: + +'''command line args:''' add the '''--''' prefix to the option + +the socket option will be: + +{{{ +--socket +}}} + +'''environment variable:''' the option name is uppercased and prefixed with UWSGI_, all the dashes are substituted with underscore + +max-vars option became + +{{{ +UWSGI_MAX_VARS="" +}}} + +'''xml:''' the root node should be and all the option values are reported as text node. Options that work as flag can be reported without value + +socket and master options became + +{{{ + + + 127.0.0.1:3031 + + +}}} + +'''ini:''' the config section should be ''uwsgi'', options that work as flag can be set as ''true'' or as ''1'' + +socket and master options became + +{{{ + +[uwsgi] +socket = 127.0.0.1:3031 +master = true + +}}} + +'''yaml:''' the root element should be '''uwsgi''', options that work as flag can be set as ''true'' or as ''1'' + +socket and master options became + +{{{ +uwsgi: + socket: 127.0.0.1 + master: 1 +}}} + +'''ldap:''' it is a complex topic, you should check the dedicated wiki page. see [wiki:useLDAP] + +[[BR]] +[[BR]] + + += The infinite list of options... = + +Here we came, take a breath and open your mind + +[[BR]] + +=== socket or uwsgi-socket === + +Specify the path (in case of UNIX socket) or the address (for INET sockets) of the socket where the uwsgi clients (your webserver) will connect to. +You can specify up to 8 socket options. When used as a command line arg you can use the '-s' shortcut + +{{{ +--socket /tmp/uwsgi.sock +}}} + +will bind to the unix socket /tmp/uwsgi.sock + +{{{ +-s 127.0.0.1:1717 +}}} + +will bind to ipv4 address 127.0.0.1 on port 1717 + +{{{ +[uwsgi] +socket = 127.0.0.1:1717 +socket = 127.0.0.1:2626 +}}} + +will bind to ipv4 address 127.0.0.1 on port 1717 and ipv4 address 127.0.0.1 on port 2626 + +=== protocol === + +set the default communication protocol (uwsgi, http, fastcgi) + +{{{ +--protocol +}}} + +=== processes or workers === + +Set the number of workers for preforking mode. +This is the base for easy and safe concurrency in your app. More workers you add, more concurrent requests you can manage. +Each worker correspond to a system process, so it consumes memory, choose carefully the right number. You can easily drop down your system if you set a too high value. + +When used as a command line arg you can shortcut it with -p + +{{{ +--processes 8 +}}} + +will spawn 8 workers + +{{{ +--workers 4 +}}} + +will spawn 4 workers + +{{{ +-p 8 +}}} + +will spawn 8 workers + +{{{ + + 3 + +}}} + +will spawn 3 workers + + +=== harakiri === + +This will set the harakiri timeout (look at the wiki home page for a better understanding). +Every request that will take longer than the seconds specified in the harakiri timeout will be dropped and the corresponding +worker recycled. + +{{{ +--harakiri 60 +}}} + +will kill every request that will take more than 60 seconds to complete + +=== harakiri-verbose === + +When a request is killed by harakiri you will get a message in the uWSGI log. Enabling this option +will print additional info (for example in Linux will be reported the current syscall) + +{{{ +--harakiri-verbose +}}} + +will enable the additional infos during aharakiri + +=== spooler-harakiri === + +set the harakiri mode for spooler tasks + +{{{ +--spooler-harakiri option +}}} + +=== mule-harakiri === + +set the harakiri mode for mule processes + +{{{ +--mule-harakiri +}}} + +=== xmlconfig or xml === + +Load the specified xml configuration file. When used as a command line arg it can be shortcutted with -x +You can have multiple stanzas in your file marked with the id attribute. To choose the stanza to use, specify +its id after the filename (using a colon as a separator) + +{{{ +--xml /etc/myapp.xml +}}} + +will load the /etc/myapp.xml config file + +{{{ +--xml /etc/myapp.xml:django +}}} + +will use the uwsgi stanza marked as 'django' in the /etc/myapp.xml config file + +This file can be something like this: + +{{{ + + + + /tmp/tg.sock + + + + /tmp/django.sock> + + + +}}} + +in this case the root node can be whatever you want (this will allows you to add uwsgi stanzas in other xml files) + +This option is implicit when the last command line argument ends with .xml + +{{{ +/usr/bin/uwsgi /etc/myapp.xml +}}} + +will automatically load the /etc/myapp.xml config file + +=== set === + +set a placeholder + +{{{ +--set KEY=VALUE +}}} + +=== daemonize === + +Run the processes in background using a logfile or a udp server + +{{{ +--daemonize /var/log/uwsgi.log +}}} + +will damonize uWSGI writing log messages to /var/log/uwsgi.log + +{{{ +[uwsgi] +daemonize = 192.168.0.100:4000 +}}} + +will daemonize uWSGI sending logs the the udp server listening on address 192.168.0.100 port 4000 See UdpLogging + +=== stop === + +sends a SIGINT to the pid written in + +{{{ +--stop +}}} + +=== reload === + +sends a SIGHUP to the pid written in + +{{{ +--reload +}}} + +=== listen === + +set the socket listen queue (default: 100). + +Every socket has an associated queue where request will be put waiting for a process to became ready to accept them. +When this queue is full requests will be rejected. + +The maximum value is system/kernel dependent. + + +=== max-vars === + +Set the max number of variables a uwsgi client (your webserver) can pass. +This is only a security mesasure, probably you will never need to touch it. + +=== buffer-size === + +Set the internal buffer size for uwsgi packet parsing. Default is 4k. + +If you plan to receive big requests with a lot of headers you can increase this value upto 64k + +{{{ +--buffer-size 32768 +}}} + +will allows the uWSGI server to receive uwsgi packet up to 32k, bigger packet will be rejected. + +=== memory-report === + +enable memory usage report. +This will print in the request log information about RSS and address space usage. + + +{{{ + + + +}}} + + +=== cgi-mode === + +Enable cgi mode. Responses will not be HTTP valid response, but cgi one (the Status: header will be added) + +=== abstract-socket === + + +=== chmod-socket or chmod === + +unix sockets are filesystem object that must obey to unix permission scheme. +You can set unix sockets permissions with this option if your webserver has no access to the uWSGI socket. + +When used as a flag this option will set permissions to 666, otherwise the spcified scheme will be used + +{{{ + + + +}}} + +will set socket permissions to 666 + +{{{ + + 644 + +}}} + +will set socket permissions to 644 + +=== freebind (Linux only) === + +allows binding on non-existent network address + +=== map-socket === + +As you can bind a uWSGI instance to multiple sockets, you can map specific workers to specific soxkets to implement in-process QoS + +{{{ +[uwsgi] +socket = /tmp/uwsgi0.sock +socket = /tmp/uwsgi1.sock +workers = 5 +map-socket = 0:1,2,3 +map-socket = 1:4,5 +}}} + +This will map workers 1, 2 and 3 to the first socket and 4 and 5 to the second one. + +If you host multiple apps in the same uWSGI instance, you can easily dedicate resources to each of them. + +=== enable-threads === + +Enable threads in the embedded languages. This will allow to spawn threads in your app. + +=== single-interpreter === + +Some of the supported languages (like python) has the concept of "multiple interpreters". +They allows to isolate apps living in the same process. If you do not want this kind of feature +use this option. + + +=== auto-procname === + +will set the uWSGI processes name to something meaningful automatically. + +e.g. "uWSGI master", "uWSGI worker 1", "uWSGI worker 2" + +=== procname-prefix === + +will prepend to the process name + +{{{ +--procname-prefix +}}} + +=== procname-prefix-spaced === + +will append a space to the prefix, before prepending it to the process name + +{{{ +--procname-prefix-spaced +}}} + +=== procname-append === + +will append to the process name + +{{{ +--procname-append +}}} + + +=== procname === + +will set the process name to + +{{{ +--procname +}}} + +=== procname-master === + +will set the master process name to + +{{{ +--procname-master +}}} + +=== master === + +enable the master process + +=== emperor === + +Start the uWSGI [wiki:Emperor] + +=== emperor-tyrant === + +enable tyrant mode for the emperor. see [wiki:Emperor#tyrant tyrant] + +=== emperor-stats or emperor-stats-server === + +enable the uWSGI stats server for emperor mode. see [wiki:StatsServer stats server] + +{{{ +--emperor-stats +}}} + +=== early-emperor === + +start the emperor before jailing and privileges drop + +=== emperor-broodlord === + +enable bloodlord mode for the emperor. see [wiki:Broodlord broodlord] + +=== emperor-amqp-vhost === + +set virtualhost name in AMQP emperor mode + +=== emperor-amqp-username === + +set username name in AMQP emperor mode + +=== emperor-amqp-password === + +set password name in AMQP emperor mode + +=== emperor-throttle === + +set the number of milliseconds (default 1000) to wait before each vassal's fork() + +=== vassals-start-hook === + + will be executed when the emperor starts the vassals + +{{{ +--vassals-start-hook +}}} + +=== vassals-stop-hook === + + will be executed when the emperor stop the vassals + +{{{ +--vassals-stop-hook +}}} + +=== auto-snapshot === + +UNKNOWN + +{{{ +--auto-snapshot 1 +}}} + +=== reload-mercy === + +set the maximum amount of seconds to wait for a worker death during a graceful reload + +{{{ +--reload-mercy 8 +}}} + +will brutally kill every worker that will not terminate itself within 8 seconds during graceful reload + +=== exit-on-reload === + +force the uWSGI stack to terminate itself even if a reload is requested. +This option is useful only in exotic cases. + + +=== help or usage === + +print the help on the stdout then exit + + +=== reaper === + +Enable reaper mode. After each request the server will cal waitpid(-1) to get rid of all the zombies. +If you spawn subprocesses in your app and you ends with zombies all over the place you can enable this option. +But you should fix your process spawning usage (if you can) ... + +=== max-requests === + +set the maximum number of requests for each worker. +When a worker reaches this number it will get recycled. You can use this option to dumb fight memory leaks (even if reload-on-as and reload-on-rss +are more useful for this kind of problem) + +{{{ +[uwsgi] +max-requests = 1000 +}}} + +will recycle a worker every 1000 requests + +=== socket-timeout === + +set the internal timeout for all the socket operations. (default 4 seconds) + +{{{ +--socket-timeout 10 +}}} + +will close connections after 10 seconds of inactivity + +=== locks === + +create locks for you to use. see [wiki:Locks locks] + +{{{ +--locks +}}} + +=== sharedarea === + +This enables the SharedArea. This is a low level shared memory. If you want a more usable/user-friendly system look at the CachingFramework + + +{{{ +--sharedarea 10 +}}} + +will create a shared memory area of 10 pages + +=== cache === + +Enable the shared cache. See CachingFramework + +=== cache-blocksize === + +set the cache blocksize, default 65536 bytes. Better use a multiply of 4096. + +=== cache-store === + +enable persistent store for the uWSGI cache + +=== cache-store-sync === + +set the msync() frequency for caching persistent store. + +=== queue === + +UNDOCUMENTED + +=== queue-blocksize === + +UNDOCUMENTED + +=== queue-store === + +UNDOCUMENTED + +=== queue-store-sync === + +UNDOCUMENTED + +=== spooler === + +Enable the [wiki:Spooler] on the specified directory + +{{{ +[uwsgi] +spooler = /home/foo/spooler +}}} + +will save spooler file in the /home/foo/spooler directory + +=== spooler-chdir === + +allows you to define a in wich chdir() before each spooler task + +{{{ +--spooler-chdir +}}} + +=== mule === + +add a mule process. See [wiki:Mules Mules] + +=== disable-logging === + +Disable request logging. Log only errors and uWSGi internal messages + +=== pidfile === + +write the pidfile to the specified file before privileges drop + +=== pidfile2 === + +write the pidfile to the specified file after privileges drop + +=== chroot === + +chroot() to the specified directory + +=== gid === + +set the gid under the uWSGI server will run + +=== uid === + +set the uid under the uWSGI server will run + +=== ini === + +path of ini config file + +{{{ +--ini +}}} + +=== yaml or yml === + +path of yaml config file + +{{{ +--yaml +}}} + +=== json === +path of a json config file + +the format follows the same rules of the other supported configuration system (plus integer, boolean and array support): + +{{{ +{ + +"uwsgi": { + "http": ":8080", + "master": true, + "module": "werkzeug.testapp:test_app", + "workers": 8, + "pythonpath": [ "/foo", "/bar" ] + } + +} +}}} + +to use JSON support you need the jansson library +by default the library presence will be auto-detected but you can force it editing buildconf/default.ini +the Emperor has been extended to support .js files too + + +{{{ +--json +}}} + +=== ldap === + +Load configuration fron an ldap server. See UseLdap + +=== ldap-schema === + +dump the LDAP schema (old-style format) + +=== ldap-schema-ldif === + +dump the LDAP schema in LDIF format (new openldap) + +=== no-server === + +initialize the uWSGI server but exit as soon as the initialization is complete (useful for testing) + +=== no-defer-accept === + +by default (where available) uWSGI will defer the accept() of requests until some data is sent by the client (this is a security/performance measure). +If you want to disable this feature specify this option. + +=== limit-as === + +limit the address space usage of each uWSGI process using POSIX/UNIX setrlimit() + +{{{ +--limit-as 256 +}}} + +will avoid uWSGI processes to grow over 256MB of address space. +Address space is the virtual memory a process has access to. It does not correspond to physical memory. + +Read and understand this page before enabling it: http://en.wikipedia.org/wiki/Virtual_memory + +=== reload-on-as === + +recycle a workers when its address space usage is over the limit specified + +{{{ +--reload-on-as 128 +}}} + +will reload a worker if it consumes more than 128 megs of address space + +=== reload-on-rss === + +Works as reload-on-as but it control the physical unshared memory. +You can enable both + +{{{ +uwsgi: + reload-on-as: 128 + reload-on-rss: 96 +}}} + +will recycle a workers when its address space usage is hgher than 128 megs or its rss usage is higher than 96 megs + +=== evil-reload-on-as === + +the master process will reload a worker when its address space usage is higher than megabyte + +{{{ +--evil-reload-on-as +}}} + +=== evil-reload-on-rss === + +same as evil-reload-on-as but it control the physical unshared memory + +{{{ +--evil-reload-on-rss +}}} + +=== log-x-forwarded-for === + +reports the correct client ip when uWSGI is run under multiple proxies + + +=== touch-reload === + +gracefully reload the uWSGI stack when a file/directory changes. + +{{{ +uwsgi: + touch-reload: /tmp/reload.txt +}}} + +if you + +{{{ +touch /tmp/reload.txt +}}} + +the uWSGI server will be gracefully reloaded + +=== limit-post === + +limit the size of body in HTTP requests. It reads the CONTENT_LENGTH uwsgi variable to know the size + +{{{ +--limit-post 65536 +}}} + +will disallow request body higher than 64k + +=== no-orphans === + +automatically kill workers without a master process + +=== prio === + +set to process priority for the system scheduler + +{{{ + + 20 + +}}} + +will set the process priority to 20 (the value is system dependent) + +=== cpu-affinity === + +Set the CPU affinity (Linux Only) See http://lists.unbit.it/pipermail/uwsgi/2011-March/001594.html + +=== post-buffering === + +enable http body buffering. uWSGI will save to disk all HTTP body bigger than the limit specified. + +{{{ +[uwsgi] +post-buffering = 8192 +}}} + +will save to disk all the HTTP body bigger than 8K. +This option is required for Rack applications as they require a rewindable input stream. + +=== post-buffering-bufsize === + +set the internal buffer size during post buffering (this is the memory allocated to read chunks of the socket stream) + +{{{ +post-buffering-bufsize 65536 +}}} + +will allocate 64k as the buffer for socket recv(). For a 128k body two cycle/syscall will be used. + +This is a very advanced option you will probably never need to touch. + +=== upload-progress === + +Enable the embedded upload progress. You pass the name of a directory where uWSGI as write permissions. +For every upload a JSON file will be written to this directory reporting the status of the upload. You can use ajax to read +these files. So configure your webserver to allow access to the directory set. + +{{{ +--upload-progress /var/www/progress +}}} + +The user upload a file to the url + +{{{ +http://uwsgi.it/upload?X-Progress-ID=550e8400-e29b-41d4-a716-446655440000 +}}} + +uWSGI find the X-Progress-ID in the query string and create a file called + +{{{ +550e8400-e29b-41d4-a716-446655440000.js +}}} + +in /var/www/progress with this kind of content + +{{{ +{ "state" : "uploading", "received" : 170000, "size" : 300000 } +}}} + + +Supposing you have mapped /progress to /var/www/progress in your webserver, you can get those json data via +ajax pointing to + +{{{ +/progress/550e8400-e29b-41d4-a716-446655440000.js +}}} + +probably your webserver has a very similar functionality, but if you need to hack it (or simply have more control) delegate +this to the uWSGI server + +=== no-default-app === + +By default, when uWSGI does not find a corresponding app for the specified SCRIPT_NAME variable, will use the default app +(most of the time the app mounted under /). Enabling this option will return an error in case of unavailable app. + +=== manage-script-name === + +If for some reason your webserver cannot manage SCRIPT_NAME you can force uWSGI to rebuild the PATH_INFO automatically. + +=== udp === + +start a udp server. Mainly useful for [wiki:UseSnmp snmp] or as a shared logger for UdpLogging + +=== multicast === + +internal option, usable by third party plugins. + +=== cluster === + +Join the specified cluster. See [wiki:Clustering] + +=== cluster-nodes === + +You can get the list of nodes in a cluster without joining it + +{{{ +--cluster-nodes 225.1.1.1:1717 +}}} + +will get the list of nodes of the 225.1.1.1:1717 cluster. This list is used internally by the uwsgi load balancing api. + +=== cluster-reload === + +gracefully reload a whole cluster + +{{{ +--cluster 225.1.1.1:1717 --cluster-reload +}}} + +will reload all the nodes in the 225.1.1.1:1717 cluster + +=== cluster-log === + +log a message to all the nodes of a cluster + +{{{ +--cluster 225.1.1.1:1717 --cluster-log "Hello World" +}}} + +will print "Hello World" to all the nodes logfiles + +=== subscribe-to or st or subscribe === + +subscribe to a SubscriptionServer, you can subscribe to multiple server using this option multiple times + +{{{ +[uwsgi] +subscribe-to = 192.168.0.1:2626:unbit.it +subscribe-to = 192.168.0.2:2626:uwsgi.it +}}} + +=== shared-socket === + +Advanced option for plugin writers or special needs. Allow to create a socket during server early startup +and use it after privileges drop or jailing. + +=== snmp === + +enable the SNMP server. See UseSnmp + +=== snmp-community === + +set the snmp community string + +=== check-interval === + +The master process make a scan every seconds. You can increase this time if you need. DISCOURAGED. + +=== binary-path === + +If you do not have uWSGI in the system path you can force its path with this option to permit the reloading system +and the [wiki:Emperor] to easily find the binary to execute. + +=== async === + +Enable the async mode. See AsyncSupport + +=== logto === + +Log to specific file or udp server + +=== logfile-chown === + +=== log-syslog === + +Log to syslog instead of a log-file. + +Passing a parameter makes uwsgi use the parameter as program-name in the syslog entry header: +{{{ +--log-syslog mywebapp +}}} + +=== log-master === + +delegate the write of the logs to the master process (this will put all of the logging I/O to a single process). Useful for +system with advanced I/O schedulers/elevators + +=== logdate or log-date=== + +report the date in every log line. You can pass an option with strftime() syntax + +=== log-zero === + +log requests with zero response size + +=== log-slow === + +=== log-4xx === + +=== log-5xx === + +=== log-big === + +=== log-sendfile === + +=== log-micros === + +use microseconds resolution for response-time logging (milliseconds resolution is the default) + +=== master-as-root === + +run the uWSGI master process as root + +=== chdir === + +chdir() to specified directory before privileges drop + +=== chdir2 === +chdir() to specified directory after privileges drop + +=== lazy === + +load applications after each worker's fork() + +=== cheap === + +postpone workers startup until the first request + +=== cheaper === + +and advanced cheap mode, this will only spawn a minimum ammount, , of workers + +{{{ +--cheaper +}}} + +=== idle === + +destroy workers (the server will go in cheap mode) after of inactivity + +{{{ +--idle +}}} + +=== mount === + +Allow mounting of multiple apps in the same process + +{{{ +--mount /pinax=/var/www/pinax/deploy/pinax.wsgi +}}} + +=== grunt === + +allows grunt processes + +=== threads === + +enable threaded operational mode. +You have to specify the number of threads per worker + +{{{ +--threads 40 --workers 2 +}}} + +will spawn two workers with 40 threads (total 80 threads) + + +=== vhost === + +enable virtual hosting mode. See VirtualHosting + +=== vhost-host === + +By default the virtualhosting mode use the SERVER_NAME variable as the hostname key. +If you want to use the HTTP_HOST one (corresponding to the Host: header) add this option + +=== check-static === + +Specify a directory that uWSGI will check before passing control to a specific handler. + +uWSGI will check if the requested PATH_INFO has a file correspondence in this directory and eventually will serve it + +{{{ +--check-static /var/www/example.com +}}} + +If the client ask for foo.png and this file exists as /var/www/example.com/foo.png uWSGI will directly serves it using the choosen method (sendfile() by default) + +=== static-map === + +map a resource as a static file area + +{{{ +[uwsgi] +static-map = /media=/var/www/django/contrib/admin/media +static-map = /images=/var/www/example.com/images +}}} + +Whenever a PATH_INFO starts with one of the configured resources, uWSGI will serve the file using the choosen method (sendfile() by default) + +=== static-index === + +Name of static file to use for directory index. + +{{{ +static-index = index.html +}}} + +If the client asks for /doc/ then uWSGI will check for /doc/index.html and if it exists it will be served to the client. + +=== file-serve-mode === + +Set the static serving mode: + +x-sendfile -> will use the X-Sendfile header (apache, Cherokee, lighttpd) + +x-accel-redirect -> will use the X-Accel-Redirect header (nginx) + +default -> sendfile() + +{{{ +--file-serve-mode x-sendfile +}}} + +=== check-cache === + +check if an item named as PATH_INFO is available in the [wiki:CachingFramework uWSGI cache] and eventually will serves it + +=== close-on-exec === + +set close-on-exec flag on the uWSGI socket. This will avoid external processes generated in a request to inherit the socket file descriptor. + +=== mode === + +generic option, the apps can read this value with uwsgi.mode + +=== env === +set an environment variable + +{{{ +[uwsgi] +env = DJANGO_SETTINGS_MODULE=mysite.settings +}}} + +this will set DJANGO_SETTINGS_MODULE to mysite.settings + +=== vacuum === + +automatically remove unix socket and pidfiles on server exit + +=== cgroup === + +run the server in cgroup (Linux only) + +{{{ +--cgroup +}}} + +=== cgroup-opt === + +set cgroup option (Linux only) + +{{{ +--cgroup-opt KEY=VAL +}}} + + +=== reuse-port (BSD only) === + +allows multiple instances binding on the same address + +=== loop === + +set the LoopEngine (advanced option) + +=== worker-exec === + +funny option to map a new executable to a uWSGI worker. +You can run a php fastcgi server pool in this way + +{{{ +/usr/bin/uwsgi --workers 4 --worker-exec /usr/bin/php53-cgi +}}} + +=== attach-daemon === + +attach an external process to the uWSGI master process, allowing it to control/monitor/respawn this process. +A typical usage is attaching a memcached instance + +{{{ +[uwsgi] +master = true +attach-daemon = memcached +}}} + + + +=== plugins === + +load the specified plugins + +{{{ +--plugins psgi,greenlet +}}} + +will load the psgi plugin and the greenlet plugin + +=== allowed-modifiers === + +Limit the client access to only a subset of [wiki:uwsgiProtocol modifiers] + +{{{ +--allowed-modifiers 0,111 +}}} + +will allow access only the WSGI handler and the cache handler + +=== remap-modifier === + +=== dump-options === + +print all the available options then exit + +=== show-config === + +print the current configuration in ini format (use this output when you ask for help in the mailing-list, THANKS) + +=== print === + +commodity option, print a string during config file parsing + +{{{ +[uwsgi] +print = foo +}}} + +will print 'foo' on server startup + +=== version === + +print the uWSGI version and exit + + +=== wsgi-file or file [python plugin required] === + +load the specified WSGI file (compatible with Graham's mod_wsgi format) + +=== eval [python plugin required] === + +evaluate a string as a WSGI entry point + +{{{ + + +def application(e, sr): + pass + + +}}} + +=== module [python plugin required] === + +load the specified python WSGI module (must be in the PYTHONPATH) + +=== callable [python plugin required] === + +set the callable to use for WSGI modules (default 'application') + +=== test [python plugin required] === + +test if a module can be imported successfully + +=== home or virtualenv or venv or pyhome [python plugin required] === + +set the specified virtualenv for python apps + +{{{ +--virtualenv /apps/env001 +}}} + + +will use the virtualenv in /apps/env001 + +=== pythonpath or python-path or pp [python plugin required] === + +add a directory (or an egg) to the PYTHONPATH +You can specify this option up to 64 times. + +{{{ +[uwsgi] +pp = myapp/lib +pp = trac.egg +}}} + +=== pymodule-alias [python plugin required] === + +magic option allowing python modules remapping. See PymoduleAlias + +=== pyargv [python plugin required] === + +set the python sys.argv + +{{{ +--pyargv "one two three" +}}} + +will set sys.argv to ('one','two','three') + +=== optimize === + +set the python optimizazion level (dangerous) + +=== paste === + +use paste.deploy to load a WSGI app + +{{{ +uwsgi --paste config:/foo/development.ini +}}} + +=== ini-paste === + +shortcut for --ini + --paste, after file parsing it will use the same file as paste.deploy config file + +=== catch-exceptions === + +print traceback in your browser instead of the logfile (DO NOT USE IT IN PRODUCTION) + +=== ignore-script-name === + +=== pep3333-input === + +=== reload-os-env === + +=== no-site [python plugin required] === + +Disable the import of python site.py module + +=== ping [ping plugin required] === + +utility option for scripts. It pings a uwsgi server. +If the ping is successfull the process exit with a 0 code, otherwise with a value > 0 + +{{{ +/usr/bin/uwsgi --ping 192.168.0.100:1717 +}}} + +will ping the uWSGI server on 192.168.0.100:1717 + +=== ping-timeout [ping plugin required] === + +set the ping-timeout (default to 3 seconds). It is the maximum number of seconds to wait before considering a uWSGI instance dead. + +{{{ +/usr/bin/uwsgi --ping 192.168.0.100:1717 --ping-timeout 10 +}}} + +will set the ping timeout to 10 seconds + +=== nagios === + +do a nagios check + +=== fastrouter === + +Run the fastrouter (it is a uwsgi proxy/load balancer) on specific address + +{{{ +[uwsgi] +fastrouter = 127.0.0.1:3017 +}}} + +run the fastrouter on address 127.0.0.1 port 3017 + +=== fastrouter-use-cache === + +check the uwsgi cache to get hostname:address mapping + +=== fastrouter-use-pattern === + +use a filesystem pattern to get hostname:address mapping + +=== fastrouter-use-base === + +=== fastrouter-events === + +limit the max number of async events the fastrouter can return in one cycle + +=== fastrouter-subscription-server === + +add a SubscriptionServer to the fastrouter to build the hostname:address map + +=== fastrouter-timeout === + +set the internal fastrouter timeout + +=== http === + +enable the embedded http server/router/gateway/loadbalancer/proxy + +=== http-var === +=== http-to === +=== http-modifier1 === +=== http-use-cache === +=== http-use-pattern === +=== http-use-base === +=== http-use-cluster === +=== http-events === + +=== http-subscription-server === + +enable the SubscriptionServer for clustering and massive hosting/load-balancing + +=== http-timeout === + +set the internal http socket timeout + +=== ugreen [ugreen plugin required] === + +enable uGreen as suspend/resume engine. See [wiki:uGreen] + +=== ugreen-stacksize [ugreen plugin required] === + +set the stack size for [wiki:uGreen] \ No newline at end of file diff --git a/uwsgi.spec b/uwsgi.spec new file mode 100644 index 0000000..5401d01 --- /dev/null +++ b/uwsgi.spec @@ -0,0 +1,241 @@ +%define wikiversion 36 + +Name: uwsgi +Version: 1.0.4 +Release: 1%{?dist} +Summary: Fast, self-healing, application container server +Group: System Environment/Daemons +License: GPLv2 +URL: http://projects.unbit.it/uwsgi +Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz +Source1: fedora.ini +# wikiversion=36; curl -o uwsgi-wiki-doc-v${wikiversion}.txt "http://projects.unbit.it/uwsgi/wiki/Doc?version=${wikiversion}&format=txt" +Source2: uwsgi-wiki-doc-v%{wikiversion}.txt +Patch0: uwsgi_fix_rpath.patch +Patch1: uwsgi_trick_chroot_rpmbuild.patch +BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel +BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed +BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby + +%description +uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly +application container server. Born as a WSGI-only server, over time it has +evolved in a complete stack for networked/clustered web applications, +implementing message/object passing, caching, RPC and process management. +It uses the uwsgi (all lowercase, already included by default in the Nginx +and Cherokee releases) protocol for all the networking/interprocess +communications. Can be run in preforking mode, threaded, +asynchronous/evented and supports various form of green threads/co-routine +(like uGreen and Fiber). Sysadmin will love it as it can be configured via +command line, environment variables, xml, .ini and yaml files and via LDAP. +Being fully modular can use tons of different technology on top of the same +core. + +%package -n %{name}-devel +Summary: uWSGI - Development header files and libraries +Group: Development/Libraries +Requires: %{name} + +%description -n %{name}-devel +This package contains the development header files and libraries +for uWSGI extensions + +%package -n %{name}-plugin-common +Summary: uWSGI - Common plugins for uWSGI +Group: System Environment/Daemons +Requires: %{name} + +%description -n %{name}-plugin-common +This package contains the most common plugins used with uWSGI. The +plugins included in this package are: cache, CGI, RPC, uGreen + +%package -n %{name}-plugin-rack +Summary: uWSGI - Ruby rack plugin +Group: System Environment/Daemons +Requires: rubygem-rack, %{name}-plugin-common + +%description -n %{name}-plugin-rack +This package contains the rack plugin for uWSGI + +%package -n %{name}-plugin-psgi +Summary: uWSGI - Plugin for PSGI support +Group: System Environment/Daemons +Requires: perl-PSGI, %{name}-plugin-common + +%description -n %{name}-plugin-psgi +This package contains the PSGI plugin for uWSGI + +%package -n %{name}-plugin-python +Summary: uWSGI - Plugin for Python support +Group: System Environment/Daemons +Requires: python, %{name}-plugin-common + +%description -n %{name}-plugin-python +This package contains the python plugin for uWSGI + +%package -n %{name}-plugin-nagios +Summary: uWSGI - Plugin for Nagios support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-nagios +This package contains the nagios plugin for uWSGI + +%package -n %{name}-plugin-fastrouter +Summary: uWSGI - Plugin for FastRouter support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-fastrouter +This package contains the fastrouter (proxy) plugin for uWSGI + +%package -n %{name}-plugin-admin +Summary: uWSGI - Plugin for Admin support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-admin +This package contains the admin plugin for uWSGI + +%package -n %{name}-plugin-python3 +Summary: uWSGI - Plugin for Python 3.2 support +Group: System Environment/Daemons +Requires: python3, %{name}-plugin-common + +%description -n %{name}-plugin-python3 +This package contains the Python 3.2 plugin for uWSGI + +%package -n %{name}-plugin-ruby +Summary: uWSGI - Plugin for Ruby support +Group: System Environment/Daemons +Requires: ruby, %{name}-plugin-common + +%description -n %{name}-plugin-ruby +This package contains the Ruby 1.9 plugin for uWSGI + +%package -n %{name}-plugin-greenlet +Summary: uWSGI - Plugin for Python Greenlet support +Group: System Environment/Daemons +Requires: python-greenlet, %{name}-plugin-common + +%description -n %{name}-plugin-greenlet +This package contains the python greenlet plugin for uWSGI + +%package -n %{name}-plugin-lua +Summary: uWSGI - Plugin for LUA support +Group: System Environment/Daemons +Requires: lua, %{name}-plugin-common + +%description -n %{name}-plugin-lua +This package contains the lua plugin for uWSGI + +%prep +%setup -q +cp -p %{SOURCE1} buildconf/ +cp -p %{SOURCE2} uwsgi-wiki-doc-v%{wikiversion}.txt +sed -i 's/\r//' uwsgi-wiki-doc-v%{wikiversion}.txt +echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) +%patch0 -p1 +%patch1 -p1 + +%build +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini + +%install +mkdir -p %{buildroot}%{_sbindir} +mkdir -p %{buildroot}%{_includedir}/%{name} +mkdir -p %{buildroot}%{_libdir}/%{name} +%{__install} -p -m 0755 uwsgi %{buildroot}%{_sbindir} +%{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} +%{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} + + +%files +%{_sbindir}/%{name} +%doc ChangeLog LICENSE README +%doc uwsgi-wiki-doc-v%{wikiversion}.txt + +%files -n %{name}-devel +%{_includedir}/%{name} + +%files -n %{name}-plugin-common +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/cache_plugin.so +%{_libdir}/%{name}/cgi_plugin.so +%{_libdir}/%{name}/rpc_plugin.so +%{_libdir}/%{name}/ugreen_plugin.so + +%files -n %{name}-plugin-rack +%{_libdir}/%{name}/rack_plugin.so + +%files -n %{name}-plugin-psgi +%{_libdir}/%{name}/psgi_plugin.so + +%files -n %{name}-plugin-python +%{_libdir}/%{name}/python_plugin.so + +%files -n %{name}-plugin-nagios +%{_libdir}/%{name}/nagios_plugin.so + +%files -n %{name}-plugin-fastrouter +%{_libdir}/%{name}/fastrouter_plugin.so + +%files -n %{name}-plugin-admin +%{_libdir}/%{name}/admin_plugin.so + +%files -n %{name}-plugin-python3 +%{_libdir}/%{name}/python32_plugin.so + +%files -n %{name}-plugin-ruby +%{_libdir}/%{name}/ruby19_plugin.so + +%files -n %{name}-plugin-greenlet +%{_libdir}/%{name}/greenlet_plugin.so + +%files -n %{name}-plugin-lua +%{_libdir}/%{name}/lua_plugin.so + + +%changelog +* Sun Feb 19 2012 Jorge A Gallegos - 1.0.4-1 +- Addressing issues from package review feedback +- s/python-devel/python2-devel +- Make the libdir subdir owned by -plugins-common +- Upgraded to latest stable upstream version + +* Mon Feb 06 2012 Jorge A Gallegos - 1.0.2.1-2 +- Fixing 'unstripped-binary-or-object' + +* Thu Jan 19 2012 Jorge A Gallegos - 1.0.2.1-1 +- New upstream version + +* Thu Dec 08 2011 Jorge A Gallegos - 0.9.9.3-1 +- New upstream version + +* Sun Oct 09 2011 Jorge A Gallegos - 0.9.9.2-2 +- Don't download the wiki page at build time + +* Sun Oct 09 2011 Jorge A Gallegos - 0.9.9.2-1 +- Updated to latest stable version +- Correctly linking plugin_dir +- Patches 1 and 2 were addressed upstream + +* Sun Aug 21 2011 Jorge A Gallegos - 0.9.8.3-3 +- Got rid of BuildRoot +- Got rid of defattr() + +* Sun Aug 14 2011 Jorge Gallegos - 0.9.8.3-2 +- Added uwsgi_fix_rpath.patch +- Backported json_loads patch to work with jansson 1.x and 2.x +- Deleted clean steps since they are not needed in fedora + +* Sun Jul 24 2011 Jorge Gallegos - 0.9.8.3-1 +- rebuilt +- Upgraded to latest stable version 0.9.8.3 +- Split packages + +* Sun Jul 17 2011 Jorge Gallegos - 0.9.6.8-2 +- Heavily modified based on Oskari's work + +* Mon Feb 28 2011 Oskari Saarenmaa - 0.9.6.8-1 +- Initial. diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch new file mode 100644 index 0000000..e439a1c --- /dev/null +++ b/uwsgi_fix_rpath.patch @@ -0,0 +1,56 @@ +diff -r 2c851ba9ddd6 plugins/jvm/uwsgiplugin.py +--- a/plugins/jvm/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 ++++ b/plugins/jvm/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +@@ -41,7 +41,3 @@ + LIBS = ['-ljvm'] + GCC_LIST = ['jvm_plugin'] + +-if os.environ.has_key('LD_RUN_PATH'): +- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH +-else: +- os.environ['LD_RUN_PATH'] = JVM_LIBPATH +diff -r 2c851ba9ddd6 plugins/jwsgi/uwsgiplugin.py +--- a/plugins/jwsgi/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 ++++ b/plugins/jwsgi/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +@@ -16,7 +16,3 @@ + LIBS = ['-ljvm'] + GCC_LIST = ['jwsgi_plugin'] + +-if os.environ.has_key('LD_RUN_PATH'): +- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH +-else: +- os.environ['LD_RUN_PATH'] = JVM_LIBPATH +diff -r 2c851ba9ddd6 plugins/python/uwsgiplugin.py +--- a/plugins/python/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 ++++ b/plugins/python/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +@@ -20,10 +20,8 @@ + else: + try: + LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR')) +- os.environ['LD_RUN_PATH'] = "%s" % (sysconfig.get_config_var('LIBDIR')) + except: + LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX) +- os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX + + + version = sysconfig.get_config_var('VERSION') +diff -r 2c851ba9ddd6 plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 ++++ b/plugins/rack/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +@@ -38,6 +38,5 @@ + + libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() + LDFLAGS.append('-L' + libpath ) +-os.environ['LD_RUN_PATH'] = libpath + LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() + +diff -r 2c851ba9ddd6 plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 ++++ b/plugins/ruby19/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +@@ -40,6 +40,5 @@ + + libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() + LDFLAGS.append('-L' + libpath ) +-os.environ['LD_RUN_PATH'] = libpath + LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() + diff --git a/uwsgi_trick_chroot_rpmbuild.patch b/uwsgi_trick_chroot_rpmbuild.patch new file mode 100644 index 0000000..5777f8c --- /dev/null +++ b/uwsgi_trick_chroot_rpmbuild.patch @@ -0,0 +1,12 @@ +diff -r 2c851ba9ddd6 uwsgiconfig.py +--- a/uwsgiconfig.py Wed Jan 18 05:01:22 2012 +0100 ++++ b/uwsgiconfig.py Wed Jan 18 22:30:33 2012 -0800 +@@ -787,7 +787,7 @@ + except: + pass + +- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin' ++ plugin_dest = name + '_plugin' + + shared_flag = '-shared' + From 3ec3a74dafb966a86943a154885bac5e7cccce2c Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Wed, 22 Feb 2012 21:59:17 -0800 Subject: [PATCH 002/427] Account for mock builds and .src.rpm --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 8438111..dd3c269 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ /uwsgi-1.0.4.tar.gz +/uwsgi-*.src.rpm +/results_uwsgi From bb046c816545b6c750b80866c934ba975c3c22d9 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Wed, 22 Feb 2012 22:56:24 -0800 Subject: [PATCH 003/427] This should actually be done via fedpkg clean --- .gitignore | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitignore b/.gitignore index dd3c269..8438111 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1 @@ /uwsgi-1.0.4.tar.gz -/uwsgi-*.src.rpm -/results_uwsgi From df417c201c64ee12bd760de3692c12a538f1938c Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Tue, 26 Jun 2012 23:09:05 -0700 Subject: [PATCH 004/427] Offset changed a little bit That is all --- uwsgi_trick_chroot_rpmbuild.patch | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/uwsgi_trick_chroot_rpmbuild.patch b/uwsgi_trick_chroot_rpmbuild.patch index 5777f8c..00b977c 100644 --- a/uwsgi_trick_chroot_rpmbuild.patch +++ b/uwsgi_trick_chroot_rpmbuild.patch @@ -1,7 +1,7 @@ -diff -r 2c851ba9ddd6 uwsgiconfig.py ---- a/uwsgiconfig.py Wed Jan 18 05:01:22 2012 +0100 -+++ b/uwsgiconfig.py Wed Jan 18 22:30:33 2012 -0800 -@@ -787,7 +787,7 @@ +diff -r 9768d97e85de uwsgiconfig.py +--- a/uwsgiconfig.py Sun May 20 20:51:46 2012 +0200 ++++ b/uwsgiconfig.py Tue Jun 26 22:33:08 2012 -0700 +@@ -899,7 +899,7 @@ except: pass @@ -9,4 +9,3 @@ diff -r 2c851ba9ddd6 uwsgiconfig.py + plugin_dest = name + '_plugin' shared_flag = '-shared' - From 88f416116cfd39bb2b6ff22bd7d1fbebe6e30bee Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Tue, 26 Jun 2012 23:50:28 -0700 Subject: [PATCH 005/427] Fixed offset for this patch too --- uwsgi_fix_rpath.patch | 47 +++++++++++++++++-------------------------- 1 file changed, 18 insertions(+), 29 deletions(-) diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index e439a1c..4941b12 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -1,28 +1,17 @@ -diff -r 2c851ba9ddd6 plugins/jvm/uwsgiplugin.py ---- a/plugins/jvm/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 -+++ b/plugins/jvm/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 -@@ -41,7 +41,3 @@ - LIBS = ['-ljvm'] - GCC_LIST = ['jvm_plugin'] +diff -r 655aa0eeb778 plugins/php/uwsgiplugin.py +--- a/plugins/php/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 ++++ b/plugins/php/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 +@@ -22,7 +22,6 @@ + LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() + if ld_run_path: + LDFLAGS.append('-L%s' % ld_run_path) +- os.environ['LD_RUN_PATH'] = ld_run_path --if os.environ.has_key('LD_RUN_PATH'): -- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH --else: -- os.environ['LD_RUN_PATH'] = JVM_LIBPATH -diff -r 2c851ba9ddd6 plugins/jwsgi/uwsgiplugin.py ---- a/plugins/jwsgi/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 -+++ b/plugins/jwsgi/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 -@@ -16,7 +16,3 @@ - LIBS = ['-ljvm'] - GCC_LIST = ['jwsgi_plugin'] + LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5'] --if os.environ.has_key('LD_RUN_PATH'): -- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH --else: -- os.environ['LD_RUN_PATH'] = JVM_LIBPATH -diff -r 2c851ba9ddd6 plugins/python/uwsgiplugin.py ---- a/plugins/python/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 -+++ b/plugins/python/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +diff -r 655aa0eeb778 plugins/python/uwsgiplugin.py +--- a/plugins/python/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 ++++ b/plugins/python/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 @@ -20,10 +20,8 @@ else: try: @@ -34,9 +23,9 @@ diff -r 2c851ba9ddd6 plugins/python/uwsgiplugin.py version = sysconfig.get_config_var('VERSION') -diff -r 2c851ba9ddd6 plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 -+++ b/plugins/rack/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +diff -r 655aa0eeb778 plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 ++++ b/plugins/rack/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 @@ -38,6 +38,5 @@ libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() @@ -44,9 +33,9 @@ diff -r 2c851ba9ddd6 plugins/rack/uwsgiplugin.py -os.environ['LD_RUN_PATH'] = libpath LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() -diff -r 2c851ba9ddd6 plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py Wed Jan 18 05:01:22 2012 +0100 -+++ b/plugins/ruby19/uwsgiplugin.py Mon Jan 23 08:50:13 2012 -0800 +diff -r 655aa0eeb778 plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 @@ -40,6 +40,5 @@ libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() From c7067d1aac566f56dfdd15a22e77040a45b23841 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Tue, 26 Jun 2012 23:51:22 -0700 Subject: [PATCH 006/427] Adding extra plugins, taking python3 out Because now python3 plugin relies on the interpreter compiling it, it has to be built separately (see http://projects.unbit.it/uwsgi/wiki/Guide4Packagers) I also added a handful of extra plugins, and am now inheriting from base --- fedora.ini | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 4f1f839..36065c4 100644 --- a/fedora.ini +++ b/fedora.ini @@ -1,5 +1,5 @@ [uwsgi] -inherit = default +inherit = base embedded_plugins = echo, ping, http -plugins = rack, psgi, python, nagios, fastrouter, admin, python32, ruby19, cache, cgi, rpc, ugreen, greenlet, lua +plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, rsyslog, syslog From 100bc2e81fb53d8ff1c37fd240b99e80c77519ef Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Wed, 27 Jun 2012 00:03:47 -0700 Subject: [PATCH 007/427] So many changes I can't list them all Adding more plugins, fixed patching offsets, changing how we build python3 plugin, also am attempting to use systemd services --- uwsgi.spec | 79 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 73 insertions(+), 6 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 5401d01..882162e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,7 +1,7 @@ -%define wikiversion 36 +%define wikiversion 41 Name: uwsgi -Version: 1.0.4 +Version: 1.2.3 Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons @@ -9,13 +9,15 @@ License: GPLv2 URL: http://projects.unbit.it/uwsgi Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini -# wikiversion=36; curl -o uwsgi-wiki-doc-v${wikiversion}.txt "http://projects.unbit.it/uwsgi/wiki/Doc?version=${wikiversion}&format=txt" +# curl -o uwsgi-wiki-doc-v${wikiversion}.txt "http://projects.unbit.it/uwsgi/wiki/Doc?version=${wikiversion}&format=txt" Source2: uwsgi-wiki-doc-v%{wikiversion}.txt -Patch0: uwsgi_fix_rpath.patch -Patch1: uwsgi_trick_chroot_rpmbuild.patch +Patch0: uwsgi_trick_chroot_rpmbuild.patch +Patch1: uwsgi_fix_rpath.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed -BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby +BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel +BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel +BuildRequires: bzip2-devel, gmp-devel, systemd-units %description uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly @@ -129,6 +131,46 @@ Requires: lua, %{name}-plugin-common %description -n %{name}-plugin-lua This package contains the lua plugin for uWSGI +%package -n %{name}-plugin-php +Summary: uWSGI - Plugin for PHP support +Group: System Environment/Daemons +Requires: php, %{name}-plugin-common + +%description -n %{name}-plugin-php +This package contains the PHP plugin for uWSGI + +%package -n %{name}-plugin-carbon +Summary: uWSGI - Plugin for Carbon/Graphite support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-carbon +This package contains the Carbon plugin for uWSGI (to use in graphite) + +%package -n %{name}-plugin-rrdtool +Summary: uWSGI - Plugin for RRDTool support +Group: System Environment/Daemons +Requires: rrdtool, %{name}-plugin-common + +%description -n %{name}-plugin-rrdtool +This package contains the RRD Tool plugin for uWSGI + +%package -n %{name}-plugin-rsyslog +Summary: uWSGI - Plugin for rsyslog support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-rsyslog +This package contains the rsyslog plugin for uWSGI + +%package -n %{name}-plugin-syslog +Summary: uWSGI - Plugin for syslog support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-syslog +This package contains the syslog plugin for uWSGI + %prep %setup -q cp -p %{SOURCE1} buildconf/ @@ -140,6 +182,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python32 %install mkdir -p %{buildroot}%{_sbindir} @@ -195,8 +238,32 @@ mkdir -p %{buildroot}%{_libdir}/%{name} %files -n %{name}-plugin-lua %{_libdir}/%{name}/lua_plugin.so +%files -n %{name}-plugin-php +%{_libdir}/%{name}/php_plugin.so + +%files -n %{name}-plugin-carbon +%{_libdir}/%{name}/carbon_plugin.so + +%files -n %{name}-plugin-rrdtool +%{_libdir}/%{name}/rrdtool_plugin.so + +%files -n %{name}-plugin-rsyslog +%{_libdir}/%{name}/rsyslog_plugin.so + +%files -n %{name}-plugin-syslog +%{_libdir}/%{name}/syslog_plugin.so + %changelog +* Tue Jun 26 2012 Jorge A Gallegos - 1.2.3-1 +- Updated to latest stable upstream +- Building the pytho3 plugin is a bit trickier now, but still possible +- Added PHP plugin +- Added Carbon plugin +- Added RRDTool plugin +- Added rsyslog plugin +- Added syslog plugin + * Sun Feb 19 2012 Jorge A Gallegos - 1.0.4-1 - Addressing issues from package review feedback - s/python-devel/python2-devel From f7a6fa8701c965a3ce6ea4e935474a7c158af8e5 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sat, 7 Jul 2012 10:51:57 -0700 Subject: [PATCH 008/427] Adding new sources --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 8438111..6a0da25 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /uwsgi-1.0.4.tar.gz +/uwsgi-1.2.3.tar.gz diff --git a/sources b/sources index 5dd746e..72cb541 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -559c8d1fa8274fb45437c277c0c7f121 uwsgi-1.0.4.tar.gz +6090367c826216f59848677a79fb7129 uwsgi-1.2.3.tar.gz From 8905a9ee888192b9349a9c6b1eca844fbe2a99f9 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sat, 7 Jul 2012 10:56:49 -0700 Subject: [PATCH 009/427] Grumble. --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 6a0da25..0cf50d3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /uwsgi-1.0.4.tar.gz /uwsgi-1.2.3.tar.gz +/uwsgi-wiki-doc-v41.txt diff --git a/sources b/sources index 72cb541..ae9e193 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ 6090367c826216f59848677a79fb7129 uwsgi-1.2.3.tar.gz +944b14687715be47c7d80352b03f76e8 uwsgi-wiki-doc-v41.txt From 9f25d84ea74cf06c41fa4302e1f5bb2710085f5d Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sat, 7 Jul 2012 17:22:25 -0700 Subject: [PATCH 010/427] Unnecessary file --- uwsgi-wiki-doc-v36.txt | 1411 ---------------------------------------- 1 file changed, 1411 deletions(-) delete mode 100644 uwsgi-wiki-doc-v36.txt diff --git a/uwsgi-wiki-doc-v36.txt b/uwsgi-wiki-doc-v36.txt deleted file mode 100644 index 6416cec..0000000 --- a/uwsgi-wiki-doc-v36.txt +++ /dev/null @@ -1,1411 +0,0 @@ -= uWSGI Documentation (list of options for 1.0) = - -The following list contains a good part (yes, not all, please help improving the doc instead of ranting...) of the uWSGI options in no particular order (even if you will find -the most important/used on top). Every option can be set in all the supported configuration ways (command line args, environment variables, -xml, ini, yaml and LDAP). Some option requires the loading of a plugin, in such case the name of the plugin will be reported in the doc. - -The examples use various style of configuration to force the user to better understand the way uWSGI works. - -If you are new to uWSGI you should probably give a look at the [wiki:Quickstart] and [wiki:Example Examples] sections for real-world-usage-configurations as the following huge list can really hurt you - - -== Little introduction about config styles == - -When choosing a configuration style or when moving from one configuration style to another, check the following rules: - -'''command line args:''' add the '''--''' prefix to the option - -the socket option will be: - -{{{ ---socket -}}} - -'''environment variable:''' the option name is uppercased and prefixed with UWSGI_, all the dashes are substituted with underscore - -max-vars option became - -{{{ -UWSGI_MAX_VARS="" -}}} - -'''xml:''' the root node should be and all the option values are reported as text node. Options that work as flag can be reported without value - -socket and master options became - -{{{ - - - 127.0.0.1:3031 - - -}}} - -'''ini:''' the config section should be ''uwsgi'', options that work as flag can be set as ''true'' or as ''1'' - -socket and master options became - -{{{ - -[uwsgi] -socket = 127.0.0.1:3031 -master = true - -}}} - -'''yaml:''' the root element should be '''uwsgi''', options that work as flag can be set as ''true'' or as ''1'' - -socket and master options became - -{{{ -uwsgi: - socket: 127.0.0.1 - master: 1 -}}} - -'''ldap:''' it is a complex topic, you should check the dedicated wiki page. see [wiki:useLDAP] - -[[BR]] -[[BR]] - - -= The infinite list of options... = - -Here we came, take a breath and open your mind - -[[BR]] - -=== socket or uwsgi-socket === - -Specify the path (in case of UNIX socket) or the address (for INET sockets) of the socket where the uwsgi clients (your webserver) will connect to. -You can specify up to 8 socket options. When used as a command line arg you can use the '-s' shortcut - -{{{ ---socket /tmp/uwsgi.sock -}}} - -will bind to the unix socket /tmp/uwsgi.sock - -{{{ --s 127.0.0.1:1717 -}}} - -will bind to ipv4 address 127.0.0.1 on port 1717 - -{{{ -[uwsgi] -socket = 127.0.0.1:1717 -socket = 127.0.0.1:2626 -}}} - -will bind to ipv4 address 127.0.0.1 on port 1717 and ipv4 address 127.0.0.1 on port 2626 - -=== protocol === - -set the default communication protocol (uwsgi, http, fastcgi) - -{{{ ---protocol -}}} - -=== processes or workers === - -Set the number of workers for preforking mode. -This is the base for easy and safe concurrency in your app. More workers you add, more concurrent requests you can manage. -Each worker correspond to a system process, so it consumes memory, choose carefully the right number. You can easily drop down your system if you set a too high value. - -When used as a command line arg you can shortcut it with -p - -{{{ ---processes 8 -}}} - -will spawn 8 workers - -{{{ ---workers 4 -}}} - -will spawn 4 workers - -{{{ --p 8 -}}} - -will spawn 8 workers - -{{{ - - 3 - -}}} - -will spawn 3 workers - - -=== harakiri === - -This will set the harakiri timeout (look at the wiki home page for a better understanding). -Every request that will take longer than the seconds specified in the harakiri timeout will be dropped and the corresponding -worker recycled. - -{{{ ---harakiri 60 -}}} - -will kill every request that will take more than 60 seconds to complete - -=== harakiri-verbose === - -When a request is killed by harakiri you will get a message in the uWSGI log. Enabling this option -will print additional info (for example in Linux will be reported the current syscall) - -{{{ ---harakiri-verbose -}}} - -will enable the additional infos during aharakiri - -=== spooler-harakiri === - -set the harakiri mode for spooler tasks - -{{{ ---spooler-harakiri option -}}} - -=== mule-harakiri === - -set the harakiri mode for mule processes - -{{{ ---mule-harakiri -}}} - -=== xmlconfig or xml === - -Load the specified xml configuration file. When used as a command line arg it can be shortcutted with -x -You can have multiple stanzas in your file marked with the id attribute. To choose the stanza to use, specify -its id after the filename (using a colon as a separator) - -{{{ ---xml /etc/myapp.xml -}}} - -will load the /etc/myapp.xml config file - -{{{ ---xml /etc/myapp.xml:django -}}} - -will use the uwsgi stanza marked as 'django' in the /etc/myapp.xml config file - -This file can be something like this: - -{{{ - - - - /tmp/tg.sock - - - - /tmp/django.sock> - - - -}}} - -in this case the root node can be whatever you want (this will allows you to add uwsgi stanzas in other xml files) - -This option is implicit when the last command line argument ends with .xml - -{{{ -/usr/bin/uwsgi /etc/myapp.xml -}}} - -will automatically load the /etc/myapp.xml config file - -=== set === - -set a placeholder - -{{{ ---set KEY=VALUE -}}} - -=== daemonize === - -Run the processes in background using a logfile or a udp server - -{{{ ---daemonize /var/log/uwsgi.log -}}} - -will damonize uWSGI writing log messages to /var/log/uwsgi.log - -{{{ -[uwsgi] -daemonize = 192.168.0.100:4000 -}}} - -will daemonize uWSGI sending logs the the udp server listening on address 192.168.0.100 port 4000 See UdpLogging - -=== stop === - -sends a SIGINT to the pid written in - -{{{ ---stop -}}} - -=== reload === - -sends a SIGHUP to the pid written in - -{{{ ---reload -}}} - -=== listen === - -set the socket listen queue (default: 100). - -Every socket has an associated queue where request will be put waiting for a process to became ready to accept them. -When this queue is full requests will be rejected. - -The maximum value is system/kernel dependent. - - -=== max-vars === - -Set the max number of variables a uwsgi client (your webserver) can pass. -This is only a security mesasure, probably you will never need to touch it. - -=== buffer-size === - -Set the internal buffer size for uwsgi packet parsing. Default is 4k. - -If you plan to receive big requests with a lot of headers you can increase this value upto 64k - -{{{ ---buffer-size 32768 -}}} - -will allows the uWSGI server to receive uwsgi packet up to 32k, bigger packet will be rejected. - -=== memory-report === - -enable memory usage report. -This will print in the request log information about RSS and address space usage. - - -{{{ - - - -}}} - - -=== cgi-mode === - -Enable cgi mode. Responses will not be HTTP valid response, but cgi one (the Status: header will be added) - -=== abstract-socket === - - -=== chmod-socket or chmod === - -unix sockets are filesystem object that must obey to unix permission scheme. -You can set unix sockets permissions with this option if your webserver has no access to the uWSGI socket. - -When used as a flag this option will set permissions to 666, otherwise the spcified scheme will be used - -{{{ - - - -}}} - -will set socket permissions to 666 - -{{{ - - 644 - -}}} - -will set socket permissions to 644 - -=== freebind (Linux only) === - -allows binding on non-existent network address - -=== map-socket === - -As you can bind a uWSGI instance to multiple sockets, you can map specific workers to specific soxkets to implement in-process QoS - -{{{ -[uwsgi] -socket = /tmp/uwsgi0.sock -socket = /tmp/uwsgi1.sock -workers = 5 -map-socket = 0:1,2,3 -map-socket = 1:4,5 -}}} - -This will map workers 1, 2 and 3 to the first socket and 4 and 5 to the second one. - -If you host multiple apps in the same uWSGI instance, you can easily dedicate resources to each of them. - -=== enable-threads === - -Enable threads in the embedded languages. This will allow to spawn threads in your app. - -=== single-interpreter === - -Some of the supported languages (like python) has the concept of "multiple interpreters". -They allows to isolate apps living in the same process. If you do not want this kind of feature -use this option. - - -=== auto-procname === - -will set the uWSGI processes name to something meaningful automatically. - -e.g. "uWSGI master", "uWSGI worker 1", "uWSGI worker 2" - -=== procname-prefix === - -will prepend to the process name - -{{{ ---procname-prefix -}}} - -=== procname-prefix-spaced === - -will append a space to the prefix, before prepending it to the process name - -{{{ ---procname-prefix-spaced -}}} - -=== procname-append === - -will append to the process name - -{{{ ---procname-append -}}} - - -=== procname === - -will set the process name to - -{{{ ---procname -}}} - -=== procname-master === - -will set the master process name to - -{{{ ---procname-master -}}} - -=== master === - -enable the master process - -=== emperor === - -Start the uWSGI [wiki:Emperor] - -=== emperor-tyrant === - -enable tyrant mode for the emperor. see [wiki:Emperor#tyrant tyrant] - -=== emperor-stats or emperor-stats-server === - -enable the uWSGI stats server for emperor mode. see [wiki:StatsServer stats server] - -{{{ ---emperor-stats -}}} - -=== early-emperor === - -start the emperor before jailing and privileges drop - -=== emperor-broodlord === - -enable bloodlord mode for the emperor. see [wiki:Broodlord broodlord] - -=== emperor-amqp-vhost === - -set virtualhost name in AMQP emperor mode - -=== emperor-amqp-username === - -set username name in AMQP emperor mode - -=== emperor-amqp-password === - -set password name in AMQP emperor mode - -=== emperor-throttle === - -set the number of milliseconds (default 1000) to wait before each vassal's fork() - -=== vassals-start-hook === - - will be executed when the emperor starts the vassals - -{{{ ---vassals-start-hook -}}} - -=== vassals-stop-hook === - - will be executed when the emperor stop the vassals - -{{{ ---vassals-stop-hook -}}} - -=== auto-snapshot === - -UNKNOWN - -{{{ ---auto-snapshot 1 -}}} - -=== reload-mercy === - -set the maximum amount of seconds to wait for a worker death during a graceful reload - -{{{ ---reload-mercy 8 -}}} - -will brutally kill every worker that will not terminate itself within 8 seconds during graceful reload - -=== exit-on-reload === - -force the uWSGI stack to terminate itself even if a reload is requested. -This option is useful only in exotic cases. - - -=== help or usage === - -print the help on the stdout then exit - - -=== reaper === - -Enable reaper mode. After each request the server will cal waitpid(-1) to get rid of all the zombies. -If you spawn subprocesses in your app and you ends with zombies all over the place you can enable this option. -But you should fix your process spawning usage (if you can) ... - -=== max-requests === - -set the maximum number of requests for each worker. -When a worker reaches this number it will get recycled. You can use this option to dumb fight memory leaks (even if reload-on-as and reload-on-rss -are more useful for this kind of problem) - -{{{ -[uwsgi] -max-requests = 1000 -}}} - -will recycle a worker every 1000 requests - -=== socket-timeout === - -set the internal timeout for all the socket operations. (default 4 seconds) - -{{{ ---socket-timeout 10 -}}} - -will close connections after 10 seconds of inactivity - -=== locks === - -create locks for you to use. see [wiki:Locks locks] - -{{{ ---locks -}}} - -=== sharedarea === - -This enables the SharedArea. This is a low level shared memory. If you want a more usable/user-friendly system look at the CachingFramework - - -{{{ ---sharedarea 10 -}}} - -will create a shared memory area of 10 pages - -=== cache === - -Enable the shared cache. See CachingFramework - -=== cache-blocksize === - -set the cache blocksize, default 65536 bytes. Better use a multiply of 4096. - -=== cache-store === - -enable persistent store for the uWSGI cache - -=== cache-store-sync === - -set the msync() frequency for caching persistent store. - -=== queue === - -UNDOCUMENTED - -=== queue-blocksize === - -UNDOCUMENTED - -=== queue-store === - -UNDOCUMENTED - -=== queue-store-sync === - -UNDOCUMENTED - -=== spooler === - -Enable the [wiki:Spooler] on the specified directory - -{{{ -[uwsgi] -spooler = /home/foo/spooler -}}} - -will save spooler file in the /home/foo/spooler directory - -=== spooler-chdir === - -allows you to define a in wich chdir() before each spooler task - -{{{ ---spooler-chdir -}}} - -=== mule === - -add a mule process. See [wiki:Mules Mules] - -=== disable-logging === - -Disable request logging. Log only errors and uWSGi internal messages - -=== pidfile === - -write the pidfile to the specified file before privileges drop - -=== pidfile2 === - -write the pidfile to the specified file after privileges drop - -=== chroot === - -chroot() to the specified directory - -=== gid === - -set the gid under the uWSGI server will run - -=== uid === - -set the uid under the uWSGI server will run - -=== ini === - -path of ini config file - -{{{ ---ini -}}} - -=== yaml or yml === - -path of yaml config file - -{{{ ---yaml -}}} - -=== json === -path of a json config file - -the format follows the same rules of the other supported configuration system (plus integer, boolean and array support): - -{{{ -{ - -"uwsgi": { - "http": ":8080", - "master": true, - "module": "werkzeug.testapp:test_app", - "workers": 8, - "pythonpath": [ "/foo", "/bar" ] - } - -} -}}} - -to use JSON support you need the jansson library -by default the library presence will be auto-detected but you can force it editing buildconf/default.ini -the Emperor has been extended to support .js files too - - -{{{ ---json -}}} - -=== ldap === - -Load configuration fron an ldap server. See UseLdap - -=== ldap-schema === - -dump the LDAP schema (old-style format) - -=== ldap-schema-ldif === - -dump the LDAP schema in LDIF format (new openldap) - -=== no-server === - -initialize the uWSGI server but exit as soon as the initialization is complete (useful for testing) - -=== no-defer-accept === - -by default (where available) uWSGI will defer the accept() of requests until some data is sent by the client (this is a security/performance measure). -If you want to disable this feature specify this option. - -=== limit-as === - -limit the address space usage of each uWSGI process using POSIX/UNIX setrlimit() - -{{{ ---limit-as 256 -}}} - -will avoid uWSGI processes to grow over 256MB of address space. -Address space is the virtual memory a process has access to. It does not correspond to physical memory. - -Read and understand this page before enabling it: http://en.wikipedia.org/wiki/Virtual_memory - -=== reload-on-as === - -recycle a workers when its address space usage is over the limit specified - -{{{ ---reload-on-as 128 -}}} - -will reload a worker if it consumes more than 128 megs of address space - -=== reload-on-rss === - -Works as reload-on-as but it control the physical unshared memory. -You can enable both - -{{{ -uwsgi: - reload-on-as: 128 - reload-on-rss: 96 -}}} - -will recycle a workers when its address space usage is hgher than 128 megs or its rss usage is higher than 96 megs - -=== evil-reload-on-as === - -the master process will reload a worker when its address space usage is higher than megabyte - -{{{ ---evil-reload-on-as -}}} - -=== evil-reload-on-rss === - -same as evil-reload-on-as but it control the physical unshared memory - -{{{ ---evil-reload-on-rss -}}} - -=== log-x-forwarded-for === - -reports the correct client ip when uWSGI is run under multiple proxies - - -=== touch-reload === - -gracefully reload the uWSGI stack when a file/directory changes. - -{{{ -uwsgi: - touch-reload: /tmp/reload.txt -}}} - -if you - -{{{ -touch /tmp/reload.txt -}}} - -the uWSGI server will be gracefully reloaded - -=== limit-post === - -limit the size of body in HTTP requests. It reads the CONTENT_LENGTH uwsgi variable to know the size - -{{{ ---limit-post 65536 -}}} - -will disallow request body higher than 64k - -=== no-orphans === - -automatically kill workers without a master process - -=== prio === - -set to process priority for the system scheduler - -{{{ - - 20 - -}}} - -will set the process priority to 20 (the value is system dependent) - -=== cpu-affinity === - -Set the CPU affinity (Linux Only) See http://lists.unbit.it/pipermail/uwsgi/2011-March/001594.html - -=== post-buffering === - -enable http body buffering. uWSGI will save to disk all HTTP body bigger than the limit specified. - -{{{ -[uwsgi] -post-buffering = 8192 -}}} - -will save to disk all the HTTP body bigger than 8K. -This option is required for Rack applications as they require a rewindable input stream. - -=== post-buffering-bufsize === - -set the internal buffer size during post buffering (this is the memory allocated to read chunks of the socket stream) - -{{{ -post-buffering-bufsize 65536 -}}} - -will allocate 64k as the buffer for socket recv(). For a 128k body two cycle/syscall will be used. - -This is a very advanced option you will probably never need to touch. - -=== upload-progress === - -Enable the embedded upload progress. You pass the name of a directory where uWSGI as write permissions. -For every upload a JSON file will be written to this directory reporting the status of the upload. You can use ajax to read -these files. So configure your webserver to allow access to the directory set. - -{{{ ---upload-progress /var/www/progress -}}} - -The user upload a file to the url - -{{{ -http://uwsgi.it/upload?X-Progress-ID=550e8400-e29b-41d4-a716-446655440000 -}}} - -uWSGI find the X-Progress-ID in the query string and create a file called - -{{{ -550e8400-e29b-41d4-a716-446655440000.js -}}} - -in /var/www/progress with this kind of content - -{{{ -{ "state" : "uploading", "received" : 170000, "size" : 300000 } -}}} - - -Supposing you have mapped /progress to /var/www/progress in your webserver, you can get those json data via -ajax pointing to - -{{{ -/progress/550e8400-e29b-41d4-a716-446655440000.js -}}} - -probably your webserver has a very similar functionality, but if you need to hack it (or simply have more control) delegate -this to the uWSGI server - -=== no-default-app === - -By default, when uWSGI does not find a corresponding app for the specified SCRIPT_NAME variable, will use the default app -(most of the time the app mounted under /). Enabling this option will return an error in case of unavailable app. - -=== manage-script-name === - -If for some reason your webserver cannot manage SCRIPT_NAME you can force uWSGI to rebuild the PATH_INFO automatically. - -=== udp === - -start a udp server. Mainly useful for [wiki:UseSnmp snmp] or as a shared logger for UdpLogging - -=== multicast === - -internal option, usable by third party plugins. - -=== cluster === - -Join the specified cluster. See [wiki:Clustering] - -=== cluster-nodes === - -You can get the list of nodes in a cluster without joining it - -{{{ ---cluster-nodes 225.1.1.1:1717 -}}} - -will get the list of nodes of the 225.1.1.1:1717 cluster. This list is used internally by the uwsgi load balancing api. - -=== cluster-reload === - -gracefully reload a whole cluster - -{{{ ---cluster 225.1.1.1:1717 --cluster-reload -}}} - -will reload all the nodes in the 225.1.1.1:1717 cluster - -=== cluster-log === - -log a message to all the nodes of a cluster - -{{{ ---cluster 225.1.1.1:1717 --cluster-log "Hello World" -}}} - -will print "Hello World" to all the nodes logfiles - -=== subscribe-to or st or subscribe === - -subscribe to a SubscriptionServer, you can subscribe to multiple server using this option multiple times - -{{{ -[uwsgi] -subscribe-to = 192.168.0.1:2626:unbit.it -subscribe-to = 192.168.0.2:2626:uwsgi.it -}}} - -=== shared-socket === - -Advanced option for plugin writers or special needs. Allow to create a socket during server early startup -and use it after privileges drop or jailing. - -=== snmp === - -enable the SNMP server. See UseSnmp - -=== snmp-community === - -set the snmp community string - -=== check-interval === - -The master process make a scan every seconds. You can increase this time if you need. DISCOURAGED. - -=== binary-path === - -If you do not have uWSGI in the system path you can force its path with this option to permit the reloading system -and the [wiki:Emperor] to easily find the binary to execute. - -=== async === - -Enable the async mode. See AsyncSupport - -=== logto === - -Log to specific file or udp server - -=== logfile-chown === - -=== log-syslog === - -Log to syslog instead of a log-file. - -Passing a parameter makes uwsgi use the parameter as program-name in the syslog entry header: -{{{ ---log-syslog mywebapp -}}} - -=== log-master === - -delegate the write of the logs to the master process (this will put all of the logging I/O to a single process). Useful for -system with advanced I/O schedulers/elevators - -=== logdate or log-date=== - -report the date in every log line. You can pass an option with strftime() syntax - -=== log-zero === - -log requests with zero response size - -=== log-slow === - -=== log-4xx === - -=== log-5xx === - -=== log-big === - -=== log-sendfile === - -=== log-micros === - -use microseconds resolution for response-time logging (milliseconds resolution is the default) - -=== master-as-root === - -run the uWSGI master process as root - -=== chdir === - -chdir() to specified directory before privileges drop - -=== chdir2 === -chdir() to specified directory after privileges drop - -=== lazy === - -load applications after each worker's fork() - -=== cheap === - -postpone workers startup until the first request - -=== cheaper === - -and advanced cheap mode, this will only spawn a minimum ammount, , of workers - -{{{ ---cheaper -}}} - -=== idle === - -destroy workers (the server will go in cheap mode) after of inactivity - -{{{ ---idle -}}} - -=== mount === - -Allow mounting of multiple apps in the same process - -{{{ ---mount /pinax=/var/www/pinax/deploy/pinax.wsgi -}}} - -=== grunt === - -allows grunt processes - -=== threads === - -enable threaded operational mode. -You have to specify the number of threads per worker - -{{{ ---threads 40 --workers 2 -}}} - -will spawn two workers with 40 threads (total 80 threads) - - -=== vhost === - -enable virtual hosting mode. See VirtualHosting - -=== vhost-host === - -By default the virtualhosting mode use the SERVER_NAME variable as the hostname key. -If you want to use the HTTP_HOST one (corresponding to the Host: header) add this option - -=== check-static === - -Specify a directory that uWSGI will check before passing control to a specific handler. - -uWSGI will check if the requested PATH_INFO has a file correspondence in this directory and eventually will serve it - -{{{ ---check-static /var/www/example.com -}}} - -If the client ask for foo.png and this file exists as /var/www/example.com/foo.png uWSGI will directly serves it using the choosen method (sendfile() by default) - -=== static-map === - -map a resource as a static file area - -{{{ -[uwsgi] -static-map = /media=/var/www/django/contrib/admin/media -static-map = /images=/var/www/example.com/images -}}} - -Whenever a PATH_INFO starts with one of the configured resources, uWSGI will serve the file using the choosen method (sendfile() by default) - -=== static-index === - -Name of static file to use for directory index. - -{{{ -static-index = index.html -}}} - -If the client asks for /doc/ then uWSGI will check for /doc/index.html and if it exists it will be served to the client. - -=== file-serve-mode === - -Set the static serving mode: - -x-sendfile -> will use the X-Sendfile header (apache, Cherokee, lighttpd) - -x-accel-redirect -> will use the X-Accel-Redirect header (nginx) - -default -> sendfile() - -{{{ ---file-serve-mode x-sendfile -}}} - -=== check-cache === - -check if an item named as PATH_INFO is available in the [wiki:CachingFramework uWSGI cache] and eventually will serves it - -=== close-on-exec === - -set close-on-exec flag on the uWSGI socket. This will avoid external processes generated in a request to inherit the socket file descriptor. - -=== mode === - -generic option, the apps can read this value with uwsgi.mode - -=== env === -set an environment variable - -{{{ -[uwsgi] -env = DJANGO_SETTINGS_MODULE=mysite.settings -}}} - -this will set DJANGO_SETTINGS_MODULE to mysite.settings - -=== vacuum === - -automatically remove unix socket and pidfiles on server exit - -=== cgroup === - -run the server in cgroup (Linux only) - -{{{ ---cgroup -}}} - -=== cgroup-opt === - -set cgroup option (Linux only) - -{{{ ---cgroup-opt KEY=VAL -}}} - - -=== reuse-port (BSD only) === - -allows multiple instances binding on the same address - -=== loop === - -set the LoopEngine (advanced option) - -=== worker-exec === - -funny option to map a new executable to a uWSGI worker. -You can run a php fastcgi server pool in this way - -{{{ -/usr/bin/uwsgi --workers 4 --worker-exec /usr/bin/php53-cgi -}}} - -=== attach-daemon === - -attach an external process to the uWSGI master process, allowing it to control/monitor/respawn this process. -A typical usage is attaching a memcached instance - -{{{ -[uwsgi] -master = true -attach-daemon = memcached -}}} - - - -=== plugins === - -load the specified plugins - -{{{ ---plugins psgi,greenlet -}}} - -will load the psgi plugin and the greenlet plugin - -=== allowed-modifiers === - -Limit the client access to only a subset of [wiki:uwsgiProtocol modifiers] - -{{{ ---allowed-modifiers 0,111 -}}} - -will allow access only the WSGI handler and the cache handler - -=== remap-modifier === - -=== dump-options === - -print all the available options then exit - -=== show-config === - -print the current configuration in ini format (use this output when you ask for help in the mailing-list, THANKS) - -=== print === - -commodity option, print a string during config file parsing - -{{{ -[uwsgi] -print = foo -}}} - -will print 'foo' on server startup - -=== version === - -print the uWSGI version and exit - - -=== wsgi-file or file [python plugin required] === - -load the specified WSGI file (compatible with Graham's mod_wsgi format) - -=== eval [python plugin required] === - -evaluate a string as a WSGI entry point - -{{{ - - -def application(e, sr): - pass - - -}}} - -=== module [python plugin required] === - -load the specified python WSGI module (must be in the PYTHONPATH) - -=== callable [python plugin required] === - -set the callable to use for WSGI modules (default 'application') - -=== test [python plugin required] === - -test if a module can be imported successfully - -=== home or virtualenv or venv or pyhome [python plugin required] === - -set the specified virtualenv for python apps - -{{{ ---virtualenv /apps/env001 -}}} - - -will use the virtualenv in /apps/env001 - -=== pythonpath or python-path or pp [python plugin required] === - -add a directory (or an egg) to the PYTHONPATH -You can specify this option up to 64 times. - -{{{ -[uwsgi] -pp = myapp/lib -pp = trac.egg -}}} - -=== pymodule-alias [python plugin required] === - -magic option allowing python modules remapping. See PymoduleAlias - -=== pyargv [python plugin required] === - -set the python sys.argv - -{{{ ---pyargv "one two three" -}}} - -will set sys.argv to ('one','two','three') - -=== optimize === - -set the python optimizazion level (dangerous) - -=== paste === - -use paste.deploy to load a WSGI app - -{{{ -uwsgi --paste config:/foo/development.ini -}}} - -=== ini-paste === - -shortcut for --ini + --paste, after file parsing it will use the same file as paste.deploy config file - -=== catch-exceptions === - -print traceback in your browser instead of the logfile (DO NOT USE IT IN PRODUCTION) - -=== ignore-script-name === - -=== pep3333-input === - -=== reload-os-env === - -=== no-site [python plugin required] === - -Disable the import of python site.py module - -=== ping [ping plugin required] === - -utility option for scripts. It pings a uwsgi server. -If the ping is successfull the process exit with a 0 code, otherwise with a value > 0 - -{{{ -/usr/bin/uwsgi --ping 192.168.0.100:1717 -}}} - -will ping the uWSGI server on 192.168.0.100:1717 - -=== ping-timeout [ping plugin required] === - -set the ping-timeout (default to 3 seconds). It is the maximum number of seconds to wait before considering a uWSGI instance dead. - -{{{ -/usr/bin/uwsgi --ping 192.168.0.100:1717 --ping-timeout 10 -}}} - -will set the ping timeout to 10 seconds - -=== nagios === - -do a nagios check - -=== fastrouter === - -Run the fastrouter (it is a uwsgi proxy/load balancer) on specific address - -{{{ -[uwsgi] -fastrouter = 127.0.0.1:3017 -}}} - -run the fastrouter on address 127.0.0.1 port 3017 - -=== fastrouter-use-cache === - -check the uwsgi cache to get hostname:address mapping - -=== fastrouter-use-pattern === - -use a filesystem pattern to get hostname:address mapping - -=== fastrouter-use-base === - -=== fastrouter-events === - -limit the max number of async events the fastrouter can return in one cycle - -=== fastrouter-subscription-server === - -add a SubscriptionServer to the fastrouter to build the hostname:address map - -=== fastrouter-timeout === - -set the internal fastrouter timeout - -=== http === - -enable the embedded http server/router/gateway/loadbalancer/proxy - -=== http-var === -=== http-to === -=== http-modifier1 === -=== http-use-cache === -=== http-use-pattern === -=== http-use-base === -=== http-use-cluster === -=== http-events === - -=== http-subscription-server === - -enable the SubscriptionServer for clustering and massive hosting/load-balancing - -=== http-timeout === - -set the internal http socket timeout - -=== ugreen [ugreen plugin required] === - -enable uGreen as suspend/resume engine. See [wiki:uGreen] - -=== ugreen-stacksize [ugreen plugin required] === - -set the stack size for [wiki:uGreen] \ No newline at end of file From c189c1a50cdd6f9182aa182871815dbda452f2ef Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sun, 8 Jul 2012 14:01:00 -0700 Subject: [PATCH 011/427] Updating to latest upstream release 1.2.4 Which happened to be released like a day after I pushed 1.2.3 --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 7 +++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 0cf50d3..8c8d92b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ /uwsgi-1.0.4.tar.gz /uwsgi-1.2.3.tar.gz /uwsgi-wiki-doc-v41.txt +/uwsgi-1.2.4.tar.gz +/uwsgi-wiki-doc-v43.txt diff --git a/sources b/sources index ae9e193..834190c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -6090367c826216f59848677a79fb7129 uwsgi-1.2.3.tar.gz -944b14687715be47c7d80352b03f76e8 uwsgi-wiki-doc-v41.txt +5216f3742fee40999ca4519519b890ad uwsgi-1.2.4.tar.gz +c2fa5a293ccac33e1c9c0277963c841e uwsgi-wiki-doc-v43.txt diff --git a/uwsgi.spec b/uwsgi.spec index 882162e..bf28119 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,7 +1,7 @@ -%define wikiversion 41 +%define wikiversion 43 Name: uwsgi -Version: 1.2.3 +Version: 1.2.4 Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons @@ -255,6 +255,9 @@ mkdir -p %{buildroot}%{_libdir}/%{name} %changelog +* Sun Jul 08 2012 Jorge A Gallegos - 1.2.4-1 +- Updated to latest stable from upstream + * Tue Jun 26 2012 Jorge A Gallegos - 1.2.3-1 - Updated to latest stable upstream - Building the pytho3 plugin is a bit trickier now, but still possible From 359555261b2a3ac208603de166eefb1eaae88426 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 21 Jul 2012 21:18:38 -0500 Subject: [PATCH 012/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index bf28119..8537c67 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -255,6 +255,9 @@ mkdir -p %{buildroot}%{_libdir}/%{name} %changelog +* Sun Jul 22 2012 Fedora Release Engineering - 1.2.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Sun Jul 08 2012 Jorge A Gallegos - 1.2.4-1 - Updated to latest stable from upstream From 1b255a44e5a859c71bf642ba3563b61ac502474b Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sun, 29 Jul 2012 15:47:35 -0700 Subject: [PATCH 013/427] Adding systemd files and changes Still not entirely working as I want it to, need to figure out why uwsgi returns 30 and how to make systemd understand that is fine --- emperor.ini | 7 +++++++ uwsgi.service | 17 +++++++++++++++++ uwsgi.spec | 50 ++++++++++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 72 insertions(+), 2 deletions(-) create mode 100644 emperor.ini create mode 100644 uwsgi.service diff --git a/emperor.ini b/emperor.ini new file mode 100644 index 0000000..562b57b --- /dev/null +++ b/emperor.ini @@ -0,0 +1,7 @@ +[uwsgi] +uid = uwsgi +gid = uwsgi +socket = /run/uwsgi/uwsgi.socket +pidfile = /run/uwsgi/uwsgi.pid +emperor = /etc/uwsgi.d +emperor-tyrant = true diff --git a/uwsgi.service b/uwsgi.service new file mode 100644 index 0000000..43a1ef4 --- /dev/null +++ b/uwsgi.service @@ -0,0 +1,17 @@ +[Unit] +Description=uWSGI Emperor Service +After=syslog.target + +[Service] +ExecStartPre=/bin/mkdir -p /run/uwsgi +ExecStartPre=/bin/chown uwsgi:uwsgi /run/uwsgi +ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini; [ $? -eq 30 ] +ExecReload=/bin/kill -HUP $MAINPID +KillSignal=SIGINT +Restart=always +Type=notify +StandardError=syslog +NotifyAccess=all + +[Install] +WantedBy=multi-user.target diff --git a/uwsgi.spec b/uwsgi.spec index 8537c67..624fdc0 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -11,6 +11,8 @@ Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini # curl -o uwsgi-wiki-doc-v${wikiversion}.txt "http://projects.unbit.it/uwsgi/wiki/Doc?version=${wikiversion}&format=txt" Source2: uwsgi-wiki-doc-v%{wikiversion}.txt +Source3: uwsgi.service +Source4: emperor.ini Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel @@ -19,6 +21,11 @@ BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-deve BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units +Requires(pre): shadow-utils +Requires(post): systemd-units +Requires(preun): systemd-units +Requires(postun): systemd-units + %description uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly application container server. Born as a WSGI-only server, over time it has @@ -175,6 +182,8 @@ This package contains the syslog plugin for uWSGI %setup -q cp -p %{SOURCE1} buildconf/ cp -p %{SOURCE2} uwsgi-wiki-doc-v%{wikiversion}.txt +cp -p %{SOURCE3} %{name}.service +cp -p %{SOURCE4} %{name}.ini sed -i 's/\r//' uwsgi-wiki-doc-v%{wikiversion}.txt echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 @@ -185,16 +194,53 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python32 %install +mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d +mkdir -p %{buildroot}%{_unitdir} mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_libdir}/%{name} -%{__install} -p -m 0755 uwsgi %{buildroot}%{_sbindir} +mkdir -p %{buildroot}/run/%{name} +%{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} +%{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini +%{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service + + +%pre +getent group uwsgi >/dev/null || groupadd -r uwsgi +getent passwd uwsgi >/dev/null || \ + useradd -r -g uwsgi -d /run/uwsgi -s /sbin/nologin \ + -c "uWSGI daemon user" uwsgi +exit 0 + +%post +if [ $1 -eq 1 ] ; then + # Initial installation + /bin/systemctl daemon-reload >/dev/null 2>&1 || : +fi + +%preun +if [ $1 -eq 0 ] ; then + # Package removal, not upgrade + /bin/systemctl --no-reload disable uwsgi.service > /dev/null 2>&1 || : + /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : +fi + +%postun +/bin/systemctl daemon-reload >/dev/null 2>&1 || : +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : +fi %files %{_sbindir}/%{name} +%{_sysconfdir}/%{name}.ini +%{_unitdir}/%{name}.service +%dir %{_sysconfdir}/%{name}.d +%dir /run/%{name} %doc ChangeLog LICENSE README %doc uwsgi-wiki-doc-v%{wikiversion}.txt From 81ec9deea2df2ba97235ff7162ab819516ee10b6 Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Sat, 4 Aug 2012 02:16:12 -0400 Subject: [PATCH 014/427] rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 624fdc0..0535075 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.4 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -301,6 +301,9 @@ fi %changelog +* Sat Aug 04 2012 David Malcolm - 1.2.4-4 +- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 + * Sun Jul 22 2012 Fedora Release Engineering - 1.2.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From bc1c097a1456bb1614a1b505c180ed2b11167cac Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sun, 9 Sep 2012 13:59:35 -0700 Subject: [PATCH 015/427] Updated to 1.2.6 --- uwsgi.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0535075..aa67e56 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,8 +1,8 @@ %define wikiversion 43 Name: uwsgi -Version: 1.2.4 -Release: 4%{?dist} +Version: 1.2.6 +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -301,6 +301,9 @@ fi %changelog +* Sun Sep 09 2012 Jorge A Gallegos - 1.2.6-1 +- Updated to latest stable from upstream + * Sat Aug 04 2012 David Malcolm - 1.2.4-4 - rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 From 49e151b393641faab7cf165e41848bb020425703 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sun, 9 Sep 2012 14:00:23 -0700 Subject: [PATCH 016/427] Updated sources --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 8c8d92b..8f6264b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /uwsgi-wiki-doc-v41.txt /uwsgi-1.2.4.tar.gz /uwsgi-wiki-doc-v43.txt +/uwsgi-1.2.6.tar.gz diff --git a/sources b/sources index 834190c..bbd4763 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -5216f3742fee40999ca4519519b890ad uwsgi-1.2.4.tar.gz +e704bf8e315129a16ea233342580e5d1 uwsgi-1.2.6.tar.gz c2fa5a293ccac33e1c9c0277963c841e uwsgi-wiki-doc-v43.txt From 5bc3f4980dfada84af141788b9d8c14faef3dd55 Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Sat, 15 Sep 2012 10:45:24 -0700 Subject: [PATCH 017/427] Adding new systemd macros to spec file --- uwsgi.spec | 45 ++++++++++++++++++++++++++++++--------------- 1 file changed, 30 insertions(+), 15 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index aa67e56..92f5d39 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -215,24 +215,36 @@ getent passwd uwsgi >/dev/null || \ exit 0 %post -if [ $1 -eq 1 ] ; then - # Initial installation - /bin/systemctl daemon-reload >/dev/null 2>&1 || : -fi +%if 0%{?systemd_post:1} + %systemd_post uwsgi.service +%else + if [ $1 -eq 1 ] ; then + # Initial installation + /bin/systemctl daemon-reload >/dev/null 2>&1 || : + fi +%endif %preun -if [ $1 -eq 0 ] ; then - # Package removal, not upgrade - /bin/systemctl --no-reload disable uwsgi.service > /dev/null 2>&1 || : - /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : -fi +%if 0%{?systemd_preun:1} + %systemd_preun uwsgi.service +%else + if [ $1 -eq 0 ] ; then + # Package removal, not upgrade + /bin/systemctl --no-reload disable uwsgi.service > /dev/null 2>&1 || : + /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : + fi +%endif %postun -/bin/systemctl daemon-reload >/dev/null 2>&1 || : -if [ $1 -ge 1 ] ; then - # Package upgrade, not uninstall - /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : -fi +%if 0%{?systemd_postun:1} + %systemd_postun uwsgi.service +%else + /bin/systemctl daemon-reload >/dev/null 2>&1 || : + if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : + fi +%endif %files @@ -301,6 +313,9 @@ fi %changelog +* Sat Sep 15 2012 Jorge A Gallegos - 1.2.6-2 +- Rebuilt with new systemd macros + * Sun Sep 09 2012 Jorge A Gallegos - 1.2.6-1 - Updated to latest stable from upstream From 40dfab3b14f261468d8de94bec91c4c29c7b7e6d Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Wed, 19 Sep 2012 07:30:24 -0700 Subject: [PATCH 018/427] Dropped dependency on php for php plugin --- uwsgi.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 92f5d39..0c365ca 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -141,7 +141,7 @@ This package contains the lua plugin for uWSGI %package -n %{name}-plugin-php Summary: uWSGI - Plugin for PHP support Group: System Environment/Daemons -Requires: php, %{name}-plugin-common +Requires: %{name}-plugin-common %description -n %{name}-plugin-php This package contains the PHP plugin for uWSGI @@ -313,6 +313,9 @@ exit 0 %changelog +* Wed Sep 19 2012 Jorge A Gallegos - 1.2.6-3 +- Dropped requirement on PHP for the PHP plugin + * Sat Sep 15 2012 Jorge A Gallegos - 1.2.6-2 - Rebuilt with new systemd macros From 1e06b3976bc9f92d15482b0b0c81e200281cb7f3 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Thu, 18 Oct 2012 14:58:13 +0200 Subject: [PATCH 019/427] rebuild for new PHP 5.4.8 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0c365ca..1d55d9a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -313,6 +313,9 @@ exit 0 %changelog +* Thu Oct 18 2012 Remi Collet - 1.2.6-4 +- rebuild for new PHP 5.4.8 + * Wed Sep 19 2012 Jorge A Gallegos - 1.2.6-3 - Dropped requirement on PHP for the PHP plugin From 879150b88266adee7898f0385ef4799232aed0a6 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 9 Nov 2012 11:08:47 +0100 Subject: [PATCH 020/427] rebuild against new php embedded library soname (5.4) --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1d55d9a..58fb669 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -313,6 +313,9 @@ exit 0 %changelog +* Fri Nov 9 2012 Remi Collet - 1.2.6-5 +- rebuild against new php embedded library soname (5.4) + * Thu Oct 18 2012 Remi Collet - 1.2.6-4 - rebuild for new PHP 5.4.8 From 7e7c7f9a23167f9e3ec54e044d584b7a0ac334bf Mon Sep 17 00:00:00 2001 From: Jorge A Gallegos Date: Wed, 26 Dec 2012 18:27:53 -0800 Subject: [PATCH 021/427] Fixing 873382 --- uwsgi.service | 3 ++- uwsgi.spec | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/uwsgi.service b/uwsgi.service index 43a1ef4..cb62704 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -5,7 +5,8 @@ After=syslog.target [Service] ExecStartPre=/bin/mkdir -p /run/uwsgi ExecStartPre=/bin/chown uwsgi:uwsgi /run/uwsgi -ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini; [ $? -eq 30 ] +ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini +SuccessExitStatus=30 ExecReload=/bin/kill -HUP $MAINPID KillSignal=SIGINT Restart=always diff --git a/uwsgi.spec b/uwsgi.spec index 58fb669..21a2d2c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -313,6 +313,9 @@ exit 0 %changelog +* Thu Dec 27 2012 Jorge A Gallegos - 1.2.6-6 +- Systemd now supports an exit status directive, fixing bugz 873382 + * Fri Nov 9 2012 Remi Collet - 1.2.6-5 - rebuild against new php embedded library soname (5.4) From dc532237ea8dfc039da37ede1b538054d6bde0c7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 14 Feb 2013 10:13:53 -0800 Subject: [PATCH 022/427] Fixing tyrant-mode misshap --- emperor.ini | 1 - uwsgi.spec | 5 ++++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/emperor.ini b/emperor.ini index 562b57b..9dfecca 100644 --- a/emperor.ini +++ b/emperor.ini @@ -4,4 +4,3 @@ gid = uwsgi socket = /run/uwsgi/uwsgi.socket pidfile = /run/uwsgi/uwsgi.pid emperor = /etc/uwsgi.d -emperor-tyrant = true diff --git a/uwsgi.spec b/uwsgi.spec index 21a2d2c..c559aec 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -313,6 +313,9 @@ exit 0 %changelog +* Thu Feb 14 2013 Jorge A Gallegos - 1.2.6-7 +- Tyrant mode shouldn't be used here, tyrant mode is root-only + * Thu Dec 27 2012 Jorge A Gallegos - 1.2.6-6 - Systemd now supports an exit status directive, fixing bugz 873382 From 6711be2002e3e83a38064ca89b1f4dac2c456268 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 14 Feb 2013 20:36:17 -0600 Subject: [PATCH 023/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index c559aec..1d7b064 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -313,6 +313,9 @@ exit 0 %changelog +* Fri Feb 15 2013 Fedora Release Engineering - 1.2.6-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + * Thu Feb 14 2013 Jorge A Gallegos - 1.2.6-7 - Tyrant mode shouldn't be used here, tyrant mode is root-only From 6298acfe5b90b448f5fc0245df995f00cea466fe Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Sat, 23 Mar 2013 15:23:53 +0100 Subject: [PATCH 024/427] rebuild for http://fedoraproject.org/wiki/Features/Php55 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1d7b064..847a8c5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -313,6 +313,9 @@ exit 0 %changelog +* Sat Mar 23 2013 Remi Collet - 1.2.6-9 +- rebuild for http://fedoraproject.org/wiki/Features/Php55 + * Fri Feb 15 2013 Fedora Release Engineering - 1.2.6-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild From 5249bc55f03d1bd93c38959065572f934f84142d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 2 Apr 2013 14:45:42 +0200 Subject: [PATCH 025/427] Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 --- uwsgi.spec | 7 ++++- uwsgi_ruby20_compatibility.patch | 50 ++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 uwsgi_ruby20_compatibility.patch diff --git a/uwsgi.spec b/uwsgi.spec index 847a8c5..1601b0d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ Name: uwsgi Version: 1.2.6 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -15,6 +15,7 @@ Source3: uwsgi.service Source4: emperor.ini Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch +Patch2: uwsgi_ruby20_compatibility.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel @@ -188,6 +189,7 @@ sed -i 's/\r//' uwsgi-wiki-doc-v%{wikiversion}.txt echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 %patch1 -p1 +%patch2 -p1 %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini @@ -313,6 +315,9 @@ exit 0 %changelog +* Tue Apr 02 2013 Vít Ondruch - 1.2.6-10 +- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 + * Sat Mar 23 2013 Remi Collet - 1.2.6-9 - rebuild for http://fedoraproject.org/wiki/Features/Php55 diff --git a/uwsgi_ruby20_compatibility.patch b/uwsgi_ruby20_compatibility.patch new file mode 100644 index 0000000..0a96494 --- /dev/null +++ b/uwsgi_ruby20_compatibility.patch @@ -0,0 +1,50 @@ +--- a/plugins/rack/uwsgiplugin.py ++++ b/plugins/rack/uwsgiplugin.py +@@ -10,13 +10,14 @@ + rbconfig = 'Config' + + version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() +-v = version.split('.') + + GCC_LIST = ['rack_plugin', 'rack_api'] + +-if v[0] == '1' and v[1] == '9': ++if version >= '1.9': + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() + CFLAGS.append('-DRUBY19') ++ if version >= '2.0': ++ CFLAGS.append('-DRUBY20') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: +--- a/plugins/ruby19/uwsgiplugin.py ++++ b/plugins/ruby19/uwsgiplugin.py +@@ -10,13 +10,14 @@ + rbconfig = 'Config' + + version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() +-v = version.split('.') + + GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api'] + +-if v[0] == '1' and v[1] == '9': ++if version >= '1.9': + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() + CFLAGS.append('-DRUBY19') ++ if version >= '2.0': ++ CFLAGS.append('-DRUBY20') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: +--- a/plugins/rack/rack_plugin.c ++++ b/plugins/rack/rack_plugin.c +@@ -163,7 +163,9 @@ + } + + #ifdef RUBY19 ++#ifndef RUBY20 + RUBY_GLOBAL_SETUP ++#endif + #endif + + VALUE uwsgi_require_file(VALUE arg) { From cc0b262296ea685cd277ebe170049102c51ab886 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 23 Apr 2013 22:17:02 -0700 Subject: [PATCH 026/427] Bumped version to 1.9.8 for f19 This version has tons of new things and improvements. --- .gitignore | 3 + fedora.ini | 18 +++- sources | 3 +- uwsgi.spec | 131 ++++++++++++++++++++++++++---- uwsgi_fix_lua.patch | 25 ++++++ uwsgi_fix_rpath.patch | 67 +++++++++------ uwsgi_ruby20_compatibility.patch | 22 ++--- uwsgi_trick_chroot_rpmbuild.patch | 15 ++-- 8 files changed, 221 insertions(+), 63 deletions(-) create mode 100644 uwsgi_fix_lua.patch diff --git a/.gitignore b/.gitignore index 8f6264b..e90d982 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,9 @@ +*.src.rpm /uwsgi-1.0.4.tar.gz /uwsgi-1.2.3.tar.gz /uwsgi-wiki-doc-v41.txt /uwsgi-1.2.4.tar.gz /uwsgi-wiki-doc-v43.txt /uwsgi-1.2.6.tar.gz +/uwsgi-1.4.5.tar.gz +/uwsgi-1.9.8.tar.gz diff --git a/fedora.ini b/fedora.ini index 36065c4..942a81b 100644 --- a/fedora.ini +++ b/fedora.ini @@ -1,5 +1,17 @@ [uwsgi] -inherit = base -embedded_plugins = echo, ping, http -plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, rsyslog, syslog +inherit = core +bin_name = uwsgi +xml = true +yaml = true +json = true +pcre = true +routing = true +debug = true +sqlite3 = true +ssl = true +xml_implementation = libxml2 +yaml_implementation = auto +malloc_implementation = libc +embedded_plugins = echo, ping, corerouter, http +plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, rsyslog, syslog, erlang, pyerl, pam, jvm, logsocket, router_uwsgi, router_redirect, router_basicauth, zergpool, redislog, mongodblog, router_rewrite, router_http, logfile, router_cache, rawrouter, router_static, sslrouter diff --git a/sources b/sources index bbd4763..c83b600 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -e704bf8e315129a16ea233342580e5d1 uwsgi-1.2.6.tar.gz -c2fa5a293ccac33e1c9c0277963c841e uwsgi-wiki-doc-v43.txt +f9844674deb5da5565620a53c4b230d1 uwsgi-1.9.8.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index 1601b0d..1f6421e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,26 +1,24 @@ -%define wikiversion 43 - Name: uwsgi -Version: 1.2.6 -Release: 10%{?dist} +Version: 1.9.8 +Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 URL: http://projects.unbit.it/uwsgi Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini -# curl -o uwsgi-wiki-doc-v${wikiversion}.txt "http://projects.unbit.it/uwsgi/wiki/Doc?version=${wikiversion}&format=txt" -Source2: uwsgi-wiki-doc-v%{wikiversion}.txt -Source3: uwsgi.service -Source4: emperor.ini +Source2: uwsgi.service +Source3: emperor.ini Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch +Patch3: uwsgi_fix_lua.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel -BuildRequires: bzip2-devel, gmp-devel, systemd-units +BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel +BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel Requires(pre): shadow-utils Requires(post): systemd-units @@ -179,17 +177,81 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-syslog This package contains the syslog plugin for uWSGI +%package -n %{name}-plugin-erlang +Summary: uWSGI - Plugin for erlang support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, erlang + +%description -n %{name}-plugin-erlang +This package contains the erlang plugin for uWSGI + +%package -n %{name}-plugin-pam +Summary: uWSGI - Plugin for PAM support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, pam + +%description -n %{name}-plugin-pam +This package contains the PAM plugin for uWSGI + +%package -n %{name}-plugin-jvm +Summary: uWSGI - Plugin for JVM support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, java-1.7.0-openjdk + +%description -n %{name}-plugin-jvm +This package contains the JVM plugin for uWSGI + +%package -n %{name}-plugin-zergpool +Summary: uWSGI - Plugin for zergpool support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-zergpool +This package contains the zergpool plugin for uWSGI + +%package -n %{name}-loggers +Summary: uWSGI - Logging plugins +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-loggers +This package contains the logging plugins for uWSGI + +%package -n %{name}-routers +Summary: uWSGI - Router plugins +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-routers +This package contains the router plugins for uWSGI + +%package -n %{name}-plugin-sslrouter +Summary: uWSGI - SSL Router plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-sslrouter +This package contains the SSL router plugin for uWSGI + +%package -n %{name}-plugin-rawrouter +Summary: uWSGI - Raw Router plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-rawrouter +This package contains the Raw router plugin for uWSGI + + %prep %setup -q cp -p %{SOURCE1} buildconf/ -cp -p %{SOURCE2} uwsgi-wiki-doc-v%{wikiversion}.txt -cp -p %{SOURCE3} %{name}.service -cp -p %{SOURCE4} %{name}.ini -sed -i 's/\r//' uwsgi-wiki-doc-v%{wikiversion}.txt +cp -p %{SOURCE2} %{name}.service +cp -p %{SOURCE3} %{name}.ini echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini @@ -201,10 +263,12 @@ mkdir -p %{buildroot}%{_unitdir} mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_libdir}/%{name} +mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} +%{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service @@ -255,8 +319,7 @@ exit 0 %{_unitdir}/%{name}.service %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} -%doc ChangeLog LICENSE README -%doc uwsgi-wiki-doc-v%{wikiversion}.txt +%doc LICENSE README %files -n %{name}-devel %{_includedir}/%{name} @@ -313,8 +376,46 @@ exit 0 %files -n %{name}-plugin-syslog %{_libdir}/%{name}/syslog_plugin.so +%files -n %{name}-plugin-erlang +%{_libdir}/%{name}/erlang_plugin.so +%{_libdir}/%{name}/pyerl_plugin.so + +%files -n %{name}-plugin-pam +%{_libdir}/%{name}/pam_plugin.so + +%files -n %{name}-plugin-jvm +%{_libdir}/%{name}/jvm_plugin.so +%{_javadir}/uwsgi.jar + +%files -n %{name}-plugin-zergpool +%{_libdir}/%{name}/zergpool_plugin.so + +%files -n %{name}-loggers +%{_libdir}/%{name}/logfile_plugin.so +%{_libdir}/%{name}/logsocket_plugin.so +%{_libdir}/%{name}/mongodblog_plugin.so +%{_libdir}/%{name}/redislog_plugin.so + +%files -n %{name}-routers +%{_libdir}/%{name}/router_*_plugin.so + +%files -n %{name}-plugin-sslrouter +%{_libdir}/%{name}/sslrouter_plugin.so + +%files -n %{name}-plugin-rawrouter +%{_libdir}/%{name}/rawrouter_plugin.so + %changelog +* Thu Apr 23 2013 Jorge A Gallegos - 1.9.8-0 +- Rebuilt with latest stable version from upstream + +* Thu Apr 11 2013 Jorge A Gallegos - 1.9.5-0 +- Rebuilt with latest stable version from upstream +- Added Erlang, PAM and JVM plugins +- Added router-related plugins +- Added logger plugins + * Tue Apr 02 2013 Vít Ondruch - 1.2.6-10 - Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 diff --git a/uwsgi_fix_lua.patch b/uwsgi_fix_lua.patch new file mode 100644 index 0000000..7bb2f4b --- /dev/null +++ b/uwsgi_fix_lua.patch @@ -0,0 +1,25 @@ +diff --git a/plugins/lua/uwsgiplugin.py b/plugins/lua/uwsgiplugin.py +index ea12926..9b13f4d 100644 +--- a/plugins/lua/uwsgiplugin.py ++++ b/plugins/lua/uwsgiplugin.py +@@ -3,17 +3,17 @@ import os,sys + try: + LUALIB = os.environ['UWSGICONFIG_LUALIB'] + except: +- LUALIB = 'lua5.1' ++ LUALIB = 'lua' + + try: + LUAINC = os.environ['UWSGICONFIG_LUAINC'] + except: +- LUAINC = '/usr/include/lua5.1' ++ LUAINC = '/usr/include' + + try: + LUALIBPATH = os.environ['UWSGICONFIG_LUALIBPATH'] + except: +- LUALIBPATH = '/usr/lib/lua5.1' ++ LUALIBPATH = '/usr/lib/lua/5.1' + + NAME='lua' + CFLAGS = ['-I%s' % LUAINC] diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index 4941b12..3de66a7 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -1,7 +1,24 @@ -diff -r 655aa0eeb778 plugins/php/uwsgiplugin.py ---- a/plugins/php/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 -+++ b/plugins/php/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 -@@ -22,7 +22,6 @@ +diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +index ac7eb3e..0911288 100644 +--- a/plugins/jvm/uwsgiplugin.py ++++ b/plugins/jvm/uwsgiplugin.py +@@ -59,11 +59,6 @@ if "-framework JavaVM" in JVM_LIBPATH: + + GCC_LIST = ['jvm_plugin'] + +-if 'LD_RUN_PATH' in os.environ: +- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH[0][2:] +-else: +- os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:] +- + def post_build(config): + if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: + os._exit(1) +diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +index fb9e5bb..fd12c91 100644 +--- a/plugins/php/uwsgiplugin.py ++++ b/plugins/php/uwsgiplugin.py +@@ -22,7 +22,6 @@ CFLAGS = [os.popen(PHPPATH + ' --includes').read().rstrip(), '-Wno-error=sign-co LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() if ld_run_path: LDFLAGS.append('-L%s' % ld_run_path) @@ -9,10 +26,11 @@ diff -r 655aa0eeb778 plugins/php/uwsgiplugin.py LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5'] -diff -r 655aa0eeb778 plugins/python/uwsgiplugin.py ---- a/plugins/python/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 -+++ b/plugins/python/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 -@@ -20,10 +20,8 @@ +diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py +index c4f03e1..8d4b2e0 100644 +--- a/plugins/python/uwsgiplugin.py ++++ b/plugins/python/uwsgiplugin.py +@@ -45,10 +45,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: else: try: LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR')) @@ -21,22 +39,25 @@ diff -r 655aa0eeb778 plugins/python/uwsgiplugin.py LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX) - os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX + LIBS.append('-lpython%s' % get_python_version()) + else: +diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +index 8dee214..2375bc9 100644 +--- a/plugins/rack/uwsgiplugin.py ++++ b/plugins/rack/uwsgiplugin.py +@@ -44,7 +44,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" - version = sysconfig.get_config_var('VERSION') -diff -r 655aa0eeb778 plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 -+++ b/plugins/rack/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 -@@ -38,6 +38,5 @@ - - libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() - LDFLAGS.append('-L' + libpath ) --os.environ['LD_RUN_PATH'] = libpath - LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() - -diff -r 655aa0eeb778 plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py Tue Jun 26 07:59:35 2012 +0200 -+++ b/plugins/ruby19/uwsgiplugin.py Tue Jun 26 23:47:16 2012 -0700 -@@ -40,6 +40,5 @@ + if has_shared == 'yes': + LDFLAGS.append('-L' + libpath ) +- os.environ['LD_RUN_PATH'] = libpath + LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) + else: + GCC_LIST.append("%s/%s" % (libpath, os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBRUBY_A']\"" % rbconfig).read().rstrip())) +diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +index ecea48d..4f35984 100644 +--- a/plugins/ruby19/uwsgiplugin.py ++++ b/plugins/ruby19/uwsgiplugin.py +@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() LDFLAGS.append('-L' + libpath ) diff --git a/uwsgi_ruby20_compatibility.patch b/uwsgi_ruby20_compatibility.patch index 0a96494..b4bf20d 100644 --- a/uwsgi_ruby20_compatibility.patch +++ b/uwsgi_ruby20_compatibility.patch @@ -1,6 +1,8 @@ +diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +index 2375bc9..b908417 100644 --- a/plugins/rack/uwsgiplugin.py +++ b/plugins/rack/uwsgiplugin.py -@@ -10,13 +10,14 @@ +@@ -10,13 +10,14 @@ except: rbconfig = 'Config' version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() @@ -8,7 +10,7 @@ GCC_LIST = ['rack_plugin', 'rack_api'] --if v[0] == '1' and v[1] == '9': +-if (v[0] == '1' and v[1] == '9') or v[0] >= '2': +if version >= '1.9': CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() CFLAGS.append('-DRUBY19') @@ -17,9 +19,11 @@ CFLAGS.append('-Wno-unused-parameter') rbconfig = 'RbConfig' else: +diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +index 4f35984..156018f 100644 --- a/plugins/ruby19/uwsgiplugin.py +++ b/plugins/ruby19/uwsgiplugin.py -@@ -10,13 +10,14 @@ +@@ -10,13 +10,14 @@ except: rbconfig = 'Config' version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() @@ -36,15 +40,3 @@ CFLAGS.append('-Wno-unused-parameter') rbconfig = 'RbConfig' else: ---- a/plugins/rack/rack_plugin.c -+++ b/plugins/rack/rack_plugin.c -@@ -163,7 +163,9 @@ - } - - #ifdef RUBY19 -+#ifndef RUBY20 - RUBY_GLOBAL_SETUP -+#endif - #endif - - VALUE uwsgi_require_file(VALUE arg) { diff --git a/uwsgi_trick_chroot_rpmbuild.patch b/uwsgi_trick_chroot_rpmbuild.patch index 00b977c..3bfb1ac 100644 --- a/uwsgi_trick_chroot_rpmbuild.patch +++ b/uwsgi_trick_chroot_rpmbuild.patch @@ -1,11 +1,16 @@ -diff -r 9768d97e85de uwsgiconfig.py ---- a/uwsgiconfig.py Sun May 20 20:51:46 2012 +0200 -+++ b/uwsgiconfig.py Tue Jun 26 22:33:08 2012 -0700 -@@ -899,7 +899,7 @@ +diff --git a/uwsgiconfig.py b/uwsgiconfig.py +index e447123..4d55f2c 100644 +--- a/uwsgiconfig.py ++++ b/uwsgiconfig.py +@@ -1129,10 +1129,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None): except: pass -- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin' +- if uc: +- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin' +- else: +- plugin_dest = name + '_plugin' + plugin_dest = name + '_plugin' shared_flag = '-shared' + From ff3a102f5fe7a6d505f4157d418841904421077c Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 4 Aug 2013 00:51:54 -0500 Subject: [PATCH 027/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1f6421e..e6e1b97 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,6 +1,6 @@ Name: uwsgi Version: 1.9.8 -Release: 0%{dist} +Release: 1%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -407,6 +407,9 @@ exit 0 %changelog +* Sun Aug 04 2013 Fedora Release Engineering - 1.9.8-1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Thu Apr 23 2013 Jorge A Gallegos - 1.9.8-0 - Rebuilt with latest stable version from upstream From fc51439f14a368d8d46b855737c861882215b166 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 2 Oct 2013 22:21:04 -0700 Subject: [PATCH 028/427] Adding new sources for 1.9.17 Both source code tarball and documentation tarball From 95cd197ed0554df14722ba71e747038631d44dfd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 2 Oct 2013 22:22:01 -0700 Subject: [PATCH 029/427] Updated sources to 1.9.17 Both source code tarball and documentation tarball From 8b81de498ac6818c01298401883031ebe7487172 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 2 Oct 2013 22:23:06 -0700 Subject: [PATCH 030/427] Updated patches to match 1.9.17 tree --- uwsgi_fix_lua.patch | 44 ++++++++++++++++++++++++------------------- uwsgi_fix_rpath.patch | 14 +++++++------- 2 files changed, 32 insertions(+), 26 deletions(-) diff --git a/uwsgi_fix_lua.patch b/uwsgi_fix_lua.patch index 7bb2f4b..e2ef54d 100644 --- a/uwsgi_fix_lua.patch +++ b/uwsgi_fix_lua.patch @@ -1,25 +1,31 @@ diff --git a/plugins/lua/uwsgiplugin.py b/plugins/lua/uwsgiplugin.py -index ea12926..9b13f4d 100644 +index 8aaa95b..d0e3cd0 100644 --- a/plugins/lua/uwsgiplugin.py +++ b/plugins/lua/uwsgiplugin.py -@@ -3,17 +3,17 @@ import os,sys - try: - LUALIB = os.environ['UWSGICONFIG_LUALIB'] - except: -- LUALIB = 'lua5.1' -+ LUALIB = 'lua' +@@ -3,7 +3,7 @@ import os,sys + LUAINC = os.environ.get('UWSGICONFIG_LUAINC') + LUALIB = os.environ.get('UWSGICONFIG_LUALIB') + LUALIBPATH = os.environ.get('UWSGICONFIG_LUALIBPATH') +-LUAPC = os.environ.get('UWSGICONFIG_LUAPC', 'lua5.1') ++LUAPC = os.environ.get('UWSGICONFIG_LUAPC', 'lua') - try: - LUAINC = os.environ['UWSGICONFIG_LUAINC'] - except: -- LUAINC = '/usr/include/lua5.1' -+ LUAINC = '/usr/include' + # we LUAINC/LUALIB/LUALIBPATH override the LUAPC for backwards compat + if LUAINC: +@@ -12,7 +12,7 @@ else: + try: + CFLAGS = os.popen('pkg-config --cflags %s' % LUAPC).read().rstrip().split() + except: +- CFLAGS = ['-I/usr/include/lua5.1'] ++ CFLAGS = ['-I/usr/include/lua'] - try: - LUALIBPATH = os.environ['UWSGICONFIG_LUALIBPATH'] - except: -- LUALIBPATH = '/usr/lib/lua5.1' -+ LUALIBPATH = '/usr/lib/lua/5.1' + if LUALIB: + LIBS = ['-l%s' % LUALIB] +@@ -20,7 +20,7 @@ else: + try: + LIBS = os.popen('pkg-config --libs %s' % LUAPC).read().rstrip().split() + except: +- LIBS = ['-llua5.1'] ++ LIBS = ['-llua'] - NAME='lua' - CFLAGS = ['-I%s' % LUAINC] + if LUALIBPATH: + LDFLAGS = ['-L%s' % LUALIBPATH] diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index 3de66a7..50c31fb 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -15,11 +15,11 @@ index ac7eb3e..0911288 100644 if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: os._exit(1) diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py -index fb9e5bb..fd12c91 100644 +index 4142aea..774d6bb 100644 --- a/plugins/php/uwsgiplugin.py +++ b/plugins/php/uwsgiplugin.py -@@ -22,7 +22,6 @@ CFLAGS = [os.popen(PHPPATH + ' --includes').read().rstrip(), '-Wno-error=sign-co - LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() +@@ -17,7 +17,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() + if ld_run_path: LDFLAGS.append('-L%s' % ld_run_path) - os.environ['LD_RUN_PATH'] = ld_run_path @@ -27,10 +27,10 @@ index fb9e5bb..fd12c91 100644 LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5'] diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py -index c4f03e1..8d4b2e0 100644 +index 13c29cd..8bc464c 100644 --- a/plugins/python/uwsgiplugin.py +++ b/plugins/python/uwsgiplugin.py -@@ -45,10 +45,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: +@@ -44,10 +44,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: else: try: LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR')) @@ -42,7 +42,7 @@ index c4f03e1..8d4b2e0 100644 LIBS.append('-lpython%s' % get_python_version()) else: diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py -index 8dee214..2375bc9 100644 +index 3d8ee83..45dc5e3 100644 --- a/plugins/rack/uwsgiplugin.py +++ b/plugins/rack/uwsgiplugin.py @@ -44,7 +44,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" @@ -52,7 +52,7 @@ index 8dee214..2375bc9 100644 - os.environ['LD_RUN_PATH'] = libpath LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) else: - GCC_LIST.append("%s/%s" % (libpath, os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBRUBY_A']\"" % rbconfig).read().rstrip())) + rubylibdir = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['rubylibdir']\"").read().rstrip() diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py index ecea48d..4f35984 100644 --- a/plugins/ruby19/uwsgiplugin.py From 48fb6c96c49a89e27a30bb603d0abe8f78a9c84c Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 2 Oct 2013 22:25:54 -0700 Subject: [PATCH 031/427] Updating to 1.9.17 This also means I am updating with the new documentation from a different github project, updating patches to the new tree and other stuff --- uwsgi.spec | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index e6e1b97..69385d1 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,14 +1,17 @@ +#To download the documentation sources: +#V=; curl -L -o uwsgi-doc-${V}.tar.gz https://github.com/unbit/uwsgi-docs/archive/master.tar.gz Name: uwsgi -Version: 1.9.8 -Release: 1%{dist} +Version: 1.9.17 +Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 -URL: http://projects.unbit.it/uwsgi -Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz +URL: https://github.com/unbit/uwsgi +Source0: https://github.com/unbit/%{name}/archive/%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service Source3: emperor.ini +Source4: uwsgi-doc-%{version}.tar.gz Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch @@ -247,6 +250,7 @@ This package contains the Raw router plugin for uWSGI cp -p %{SOURCE1} buildconf/ cp -p %{SOURCE2} %{name}.service cp -p %{SOURCE3} %{name}.ini +cp -p %{SOURCE4} uwsgi-docs.tar.gz echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 %patch1 -p1 @@ -255,7 +259,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python32 +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 %install mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d @@ -265,6 +269,8 @@ mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} +mkdir docs +tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} @@ -319,7 +325,7 @@ exit 0 %{_unitdir}/%{name}.service %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} -%doc LICENSE README +%doc LICENSE README docs %files -n %{name}-devel %{_includedir}/%{name} @@ -350,7 +356,7 @@ exit 0 %{_libdir}/%{name}/admin_plugin.so %files -n %{name}-plugin-python3 -%{_libdir}/%{name}/python32_plugin.so +%{_libdir}/%{name}/python3_plugin.so %files -n %{name}-plugin-ruby %{_libdir}/%{name}/ruby19_plugin.so @@ -407,10 +413,14 @@ exit 0 %changelog +* Wed Oct 02 2013 Jorge A Gallegos - 1.9.17-0 +- Rebuilt for version 1.9.17 +- Pulling in new documentation from https://github.com/unbit/uwsgi-docs + * Sun Aug 04 2013 Fedora Release Engineering - 1.9.8-1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild -* Thu Apr 23 2013 Jorge A Gallegos - 1.9.8-0 +* Tue Apr 23 2013 Jorge A Gallegos - 1.9.8-0 - Rebuilt with latest stable version from upstream * Thu Apr 11 2013 Jorge A Gallegos - 1.9.5-0 From 7ee31a5d232246edac4ce4eea5d07d8799abdbc4 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 2 Oct 2013 22:27:14 -0700 Subject: [PATCH 032/427] Perhaps it will hold this time? --- .gitignore | 2 ++ sources | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index e90d982..09e8d7f 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ /uwsgi-1.2.6.tar.gz /uwsgi-1.4.5.tar.gz /uwsgi-1.9.8.tar.gz +/1.9.17.tar.gz +/uwsgi-doc-1.9.17.tar.gz diff --git a/sources b/sources index c83b600..03db0bd 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -f9844674deb5da5565620a53c4b230d1 uwsgi-1.9.8.tar.gz +0e05fe94aa6065a65fb1f54b327f6702 1.9.17.tar.gz +112db5dadadbde15b89dcc7b4a9908d3 uwsgi-doc-1.9.17.tar.gz From 0e84450495bf62a3f85f0ef14790267e2217ca46 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 08:55:25 -0700 Subject: [PATCH 033/427] Get rid of the socket directive Partly fixex BZ 912317 --- emperor.ini | 1 - 1 file changed, 1 deletion(-) diff --git a/emperor.ini b/emperor.ini index 9dfecca..af429a4 100644 --- a/emperor.ini +++ b/emperor.ini @@ -1,6 +1,5 @@ [uwsgi] uid = uwsgi gid = uwsgi -socket = /run/uwsgi/uwsgi.socket pidfile = /run/uwsgi/uwsgi.pid emperor = /etc/uwsgi.d From 6e9a7acef1633f111906dd00887380621a1c7f5f Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 08:59:59 -0700 Subject: [PATCH 034/427] This got fixed a while ago, don't need it This completes fix for BZ 912317 --- uwsgi.service | 3 --- 1 file changed, 3 deletions(-) diff --git a/uwsgi.service b/uwsgi.service index cb62704..f9961d2 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -6,9 +6,6 @@ After=syslog.target ExecStartPre=/bin/mkdir -p /run/uwsgi ExecStartPre=/bin/chown uwsgi:uwsgi /run/uwsgi ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini -SuccessExitStatus=30 -ExecReload=/bin/kill -HUP $MAINPID -KillSignal=SIGINT Restart=always Type=notify StandardError=syslog From 5d3d16b72733f84e3c656b9f0e9df71e7c3e47d4 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 09:20:08 -0700 Subject: [PATCH 035/427] Embed the common logging plugins in main binary --- fedora.ini | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/fedora.ini b/fedora.ini index 942a81b..7335abd 100644 --- a/fedora.ini +++ b/fedora.ini @@ -12,6 +12,5 @@ ssl = true xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc -embedded_plugins = echo, ping, corerouter, http -plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, rsyslog, syslog, erlang, pyerl, pam, jvm, logsocket, router_uwsgi, router_redirect, router_basicauth, zergpool, redislog, mongodblog, router_rewrite, router_http, logfile, router_cache, rawrouter, router_static, sslrouter - +embedded_plugins = echo, ping, corerouter, http, logfile, logsocket, logsyslog, logrsyslog, redislog, mongodblog +plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, erlang, pyerl, pam, jvm, router_uwsgi, router_redirect, router_basicauth, zergpool, router_rewrite, router_http, router_cache, rawrouter, router_static, sslrouter From f38fc1554c5fa700b505fe47ee04229bf959cf43 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 09:20:46 -0700 Subject: [PATCH 036/427] Updating the spec to - Ship CHANGELOG - Add libcap-devel to enable POSIX capabilities - Obsoleting uwsgi-loggers because these are now shipped in the main binary --- uwsgi.spec | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 69385d1..c23999d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,7 +2,7 @@ #V=; curl -L -o uwsgi-doc-${V}.tar.gz https://github.com/unbit/uwsgi-docs/archive/master.tar.gz Name: uwsgi Version: 1.9.17 -Release: 0%{dist} +Release: 1%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -21,7 +21,9 @@ BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel -BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel +BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel, libcap-devel +Obsoletes: %{name}-loggers <= 1.9.8-1 +Provides: %{name}-loggers = %{version}-%{release} Requires(pre): shadow-utils Requires(post): systemd-units @@ -212,14 +214,6 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-zergpool This package contains the zergpool plugin for uWSGI -%package -n %{name}-loggers -Summary: uWSGI - Logging plugins -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-loggers -This package contains the logging plugins for uWSGI - %package -n %{name}-routers Summary: uWSGI - Router plugins Group: System Environment/Daemons @@ -271,6 +265,7 @@ mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz +cp docs/Changelog-%{version}.rst CHANGELOG %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} @@ -325,7 +320,7 @@ exit 0 %{_unitdir}/%{name}.service %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} -%doc LICENSE README docs +%doc LICENSE README CHANGELOG docs %files -n %{name}-devel %{_includedir}/%{name} @@ -396,12 +391,6 @@ exit 0 %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so -%files -n %{name}-loggers -%{_libdir}/%{name}/logfile_plugin.so -%{_libdir}/%{name}/logsocket_plugin.so -%{_libdir}/%{name}/mongodblog_plugin.so -%{_libdir}/%{name}/redislog_plugin.so - %files -n %{name}-routers %{_libdir}/%{name}/router_*_plugin.so @@ -413,6 +402,11 @@ exit 0 %changelog +* Thu Oct 03 2013 Jorge A Gallegos - 1.9.17-1 +- Copying the version changelog to top-level doc +- Compile with POSIX capabilities +- Embed the common loggers into the binary itself, no need for an extra package + * Wed Oct 02 2013 Jorge A Gallegos - 1.9.17-0 - Rebuilt for version 1.9.17 - Pulling in new documentation from https://github.com/unbit/uwsgi-docs From 815309e2f5e6c0ff6e51b6a2c291ae3eb257d562 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 09:57:06 -0700 Subject: [PATCH 037/427] Use the right plugin names --- fedora.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 7335abd..718c67b 100644 --- a/fedora.ini +++ b/fedora.ini @@ -12,5 +12,5 @@ ssl = true xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc -embedded_plugins = echo, ping, corerouter, http, logfile, logsocket, logsyslog, logrsyslog, redislog, mongodblog +embedded_plugins = echo, ping, corerouter, http, logfile, logsocket, syslog, rsyslog, redislog, mongodblog plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, erlang, pyerl, pam, jvm, router_uwsgi, router_redirect, router_basicauth, zergpool, router_rewrite, router_http, router_cache, rawrouter, router_static, sslrouter From ce8a33b8c9c950f4f27ea3b5e03a1e747be44518 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 09:57:31 -0700 Subject: [PATCH 038/427] Obsoleting the old [r]syslog plugin packages --- uwsgi.spec | 26 +++----------------------- 1 file changed, 3 insertions(+), 23 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index c23999d..3bcc11f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -23,6 +23,8 @@ BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel, libcap-devel Obsoletes: %{name}-loggers <= 1.9.8-1 +Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 +Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Provides: %{name}-loggers = %{version}-%{release} Requires(pre): shadow-utils @@ -166,22 +168,6 @@ Requires: rrdtool, %{name}-plugin-common %description -n %{name}-plugin-rrdtool This package contains the RRD Tool plugin for uWSGI -%package -n %{name}-plugin-rsyslog -Summary: uWSGI - Plugin for rsyslog support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-rsyslog -This package contains the rsyslog plugin for uWSGI - -%package -n %{name}-plugin-syslog -Summary: uWSGI - Plugin for syslog support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-syslog -This package contains the syslog plugin for uWSGI - %package -n %{name}-plugin-erlang Summary: uWSGI - Plugin for erlang support Group: System Environment/Daemons @@ -371,12 +357,6 @@ exit 0 %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so -%files -n %{name}-plugin-rsyslog -%{_libdir}/%{name}/rsyslog_plugin.so - -%files -n %{name}-plugin-syslog -%{_libdir}/%{name}/syslog_plugin.so - %files -n %{name}-plugin-erlang %{_libdir}/%{name}/erlang_plugin.so %{_libdir}/%{name}/pyerl_plugin.so @@ -405,7 +385,7 @@ exit 0 * Thu Oct 03 2013 Jorge A Gallegos - 1.9.17-1 - Copying the version changelog to top-level doc - Compile with POSIX capabilities -- Embed the common loggers into the binary itself, no need for an extra package +- Embed the loggers into the binary itself, no need for an extra package * Wed Oct 02 2013 Jorge A Gallegos - 1.9.17-0 - Rebuilt for version 1.9.17 From 2c1b7e4cb1276bfa3b0ae4a4ad39ce2de839bfd6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 4 Oct 2013 15:43:08 -0700 Subject: [PATCH 039/427] More patches. If this works will send upstream --- uwsgi.spec | 3 +++ uwsgi_fix_jvm_in_arm.patch | 20 ++++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 uwsgi_fix_jvm_in_arm.patch diff --git a/uwsgi.spec b/uwsgi.spec index 3bcc11f..2eb12ac 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -16,6 +16,7 @@ Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch +Patch4: uwsgi_fix_jvm_in_arm.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel @@ -236,6 +237,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini @@ -386,6 +388,7 @@ exit 0 - Copying the version changelog to top-level doc - Compile with POSIX capabilities - Embed the loggers into the binary itself, no need for an extra package +- Patching jvm plugin to support arm * Wed Oct 02 2013 Jorge A Gallegos - 1.9.17-0 - Rebuilt for version 1.9.17 diff --git a/uwsgi_fix_jvm_in_arm.patch b/uwsgi_fix_jvm_in_arm.patch new file mode 100644 index 0000000..ede93a2 --- /dev/null +++ b/uwsgi_fix_jvm_in_arm.patch @@ -0,0 +1,20 @@ +diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +index ac7eb3e..3c0e097 100644 +--- a/plugins/jvm/uwsgiplugin.py ++++ b/plugins/jvm/uwsgiplugin.py +@@ -7,12 +7,14 @@ JVM_INCPATH = None + JVM_LIBPATH = None + + operating_system = os.uname()[0].lower() +-arch = os.uname()[4] ++arch = os.uname()[4].lower() + + if arch in ('i686', 'x86', 'x86_32'): + arch = 'i386' + elif arch in ('x86_64',): + arch = 'amd64' ++elif arch.startswith('arm'): ++ arch = 'arm' + + # try to detect the JVM + if operating_system == 'darwin': From 11e3d17854faafa126b2a96cc73aabd1bb97a1d2 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 5 Oct 2013 12:17:36 -0700 Subject: [PATCH 040/427] Enabling stats log socket, and capabilities Now that we are compiling with libcap by default, it makes sense to take advantage of capabilities --- emperor.ini | 3 +++ 1 file changed, 3 insertions(+) diff --git a/emperor.ini b/emperor.ini index af429a4..e0ba2d1 100644 --- a/emperor.ini +++ b/emperor.ini @@ -3,3 +3,6 @@ uid = uwsgi gid = uwsgi pidfile = /run/uwsgi/uwsgi.pid emperor = /etc/uwsgi.d +stats = /run/uwsgi/stats.sock +emperor-tyrant = true +cap = setgid,setuid From c04fd62ef2ccf45c38a0fed5a36683f1df6ea22c Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 5 Oct 2013 12:18:13 -0700 Subject: [PATCH 041/427] This was actually right. From the documentation > By default sending the SIGTERM signal to uWSGI means "brutally > reload the stack" while the convention is to shut an application > down on SIGTERM. To shutdown uWSGI use SIGINT or SIGQUIT instead. > If you absolutely can not live with uWSGI being so disrespectful > towards SIGTERM, by all means enable the die-on-term option. (https://uwsgi-docs.readthedocs.org/en/latest/ThingsToKnow.html) And: > Sending SIGHUP to the Emperor will reload all vassals. (https://uwsgi-docs.readthedocs.org/en/latest/Emperor.html) --- uwsgi.service | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwsgi.service b/uwsgi.service index f9961d2..e2f2446 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -6,6 +6,8 @@ After=syslog.target ExecStartPre=/bin/mkdir -p /run/uwsgi ExecStartPre=/bin/chown uwsgi:uwsgi /run/uwsgi ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini +ExecReload=/bin/kill -HUP $MAINPID +KillSignal=SIGINT Restart=always Type=notify StandardError=syslog From 403b7efe6c9a5507626d54018302929717c6a175 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 5 Oct 2013 23:23:09 -0700 Subject: [PATCH 042/427] Complying with the guidelines for source urls https://fedoraproject.org/wiki/Packaging:SourceURL#Github describes in perfect detail what to do about source urls. Also this other bit: > If the upstream does create tarballs you should use them as tarballs > provide an easier trail for people auditing the packages. In this case unbit *does* provide tarballs outside the git repo --- uwsgi.spec | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2eb12ac..fee0e52 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,8 @@ -#To download the documentation sources: -#V=; curl -L -o uwsgi-doc-${V}.tar.gz https://github.com/unbit/uwsgi-docs/archive/master.tar.gz +#Documentation sources: +%global commit b86b3f7f183f90d874c8586d369c8cecc4347121 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global docrepo uwsgi-docs + Name: uwsgi Version: 1.9.17 Release: 1%{dist} @@ -7,11 +10,11 @@ Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 URL: https://github.com/unbit/uwsgi -Source0: https://github.com/unbit/%{name}/archive/%{version}.tar.gz +Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service Source3: emperor.ini -Source4: uwsgi-doc-%{version}.tar.gz +Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch @@ -254,6 +257,9 @@ mkdir -p %{buildroot}/run/%{name} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{version}.rst CHANGELOG +echo "A copy of the documentation is included under the docs/" > README.Fedora +echo "directory at commit %{commit}, i.e. this:" >> README.Fedora +echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} @@ -308,7 +314,7 @@ exit 0 %{_unitdir}/%{name}.service %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} -%doc LICENSE README CHANGELOG docs +%doc LICENSE README README.Fedora CHANGELOG docs %files -n %{name}-devel %{_includedir}/%{name} From f6d78815a7c508b220248e174990776d742dae0d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 7 Oct 2013 11:45:42 -0700 Subject: [PATCH 043/427] Adding mod_proxy_uwsgi apache module --- uwsgi.spec | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index fee0e52..20f7b8f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,6 +2,8 @@ %global commit b86b3f7f183f90d874c8586d369c8cecc4347121 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs +%{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} +%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} Name: uwsgi Version: 1.9.17 @@ -26,6 +28,7 @@ BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-deve BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel, libcap-devel +BuildRequires: httpd-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 @@ -228,6 +231,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-rawrouter This package contains the Raw router plugin for uWSGI +%package -n mod_proxy_%{name} +Summary: uWSGI - Apache2 proxy module +Group: System Environment/Daemons +Requires: %{name}, httpd + +%description -n mod_proxy_%{name} +Fully Apache API compliant proxy module + %prep %setup -q @@ -245,6 +256,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 +%{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d @@ -254,6 +266,7 @@ mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} +mkdir -p %{buildroot}%{_httpd_moddir} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{version}.rst CHANGELOG @@ -266,6 +279,7 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service +%{__install} -p -m 0755 apache2/.libs/mod_proxy_%{name}.so %{buildroot}%{_httpd_moddir}/mod_proxy_%{name}.so %pre @@ -388,6 +402,9 @@ exit 0 %files -n %{name}-plugin-rawrouter %{_libdir}/%{name}/rawrouter_plugin.so +%files -n mod_proxy_%{name} +%{_httpd_moddir}/mod_proxy_%{name}.so + %changelog * Thu Oct 03 2013 Jorge A Gallegos - 1.9.17-1 From b92c97e1b1c212ffe539c1417e769fed2062389b Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 7 Oct 2013 13:18:54 -0700 Subject: [PATCH 044/427] Adding more router plugins Full list: router_access router_basicauth router_cache router_expires router_hash router_http router_memcached router_redirect router_redis router_rewrite router_static router_uwsgi router_xmldir --- fedora.ini | 2 +- uwsgi.spec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 718c67b..177c510 100644 --- a/fedora.ini +++ b/fedora.ini @@ -13,4 +13,4 @@ xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc embedded_plugins = echo, ping, corerouter, http, logfile, logsocket, syslog, rsyslog, redislog, mongodblog -plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, erlang, pyerl, pam, jvm, router_uwsgi, router_redirect, router_basicauth, zergpool, router_rewrite, router_http, router_cache, rawrouter, router_static, sslrouter +plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, erlang, pyerl, pam, jvm, zergpool, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rawrouter, sslrouter diff --git a/uwsgi.spec b/uwsgi.spec index 20f7b8f..530222f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -28,7 +28,7 @@ BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-deve BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel, libcap-devel -BuildRequires: httpd-devel +BuildRequires: httpd-devel, tcp_wrappers-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 From 24f9af3147f706c35b1631f479d19499efa2bd35 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 8 Oct 2013 21:13:04 -0700 Subject: [PATCH 045/427] Uploaded new sources per spec rework From 682f89dd7d4048de7fddb89f1d4d6664c0e0af17 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 8 Oct 2013 21:16:49 -0700 Subject: [PATCH 046/427] Again, what's wrong with git? From 3c84261b08b1c52789acf24211694465ddbacd30 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 8 Oct 2013 21:17:24 -0700 Subject: [PATCH 047/427] Sigh. --- .gitignore | 2 ++ sources | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 09e8d7f..2271198 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,5 @@ /uwsgi-1.9.8.tar.gz /1.9.17.tar.gz /uwsgi-doc-1.9.17.tar.gz +/uwsgi-1.9.17.tar.gz +/uwsgi-docs-b86b3f7.tar.gz diff --git a/sources b/sources index 03db0bd..2be9ae9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -0e05fe94aa6065a65fb1f54b327f6702 1.9.17.tar.gz -112db5dadadbde15b89dcc7b4a9908d3 uwsgi-doc-1.9.17.tar.gz +0e05fe94aa6065a65fb1f54b327f6702 uwsgi-1.9.17.tar.gz +90a1f014a95fd5e43ff9ba6052d4f24c uwsgi-docs-b86b3f7.tar.gz From ee151973c7ecc20809b25daa7e524268e0f0ce96 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 8 Oct 2013 21:30:11 -0700 Subject: [PATCH 048/427] Releasing version 1.9.17-2 --- uwsgi.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 530222f..ed9f759 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -7,7 +7,7 @@ Name: uwsgi Version: 1.9.17 -Release: 1%{dist} +Release: 2%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 @@ -407,6 +407,14 @@ exit 0 %changelog +* Wed Oct 09 2013 Jorge A Gallegos - 1.9.17-2 +- Uploaded new sources per spec rework (Jorge Gallegos) +- Adding more router plugins (Jorge Gallegos) +- Adding mod_proxy_uwsgi apache module (Jorge Gallegos) +- Complying with the guidelines for source urls (Jorge Gallegos) +- The settings in the service file were right before (Jorge Gallegos) +- Enabling stats log socket, and capabilities (Jorge Gallegos) + * Thu Oct 03 2013 Jorge A Gallegos - 1.9.17-1 - Copying the version changelog to top-level doc - Compile with POSIX capabilities From 95f3af7a4e9b1a0df39ab2d5c4bb341d8009a632 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 11 Oct 2013 11:37:27 -0700 Subject: [PATCH 049/427] Forgot to disable debug mode --- fedora.ini | 1 - 1 file changed, 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 177c510..614f861 100644 --- a/fedora.ini +++ b/fedora.ini @@ -6,7 +6,6 @@ yaml = true json = true pcre = true routing = true -debug = true sqlite3 = true ssl = true xml_implementation = libxml2 From 04a7166fc64b9f5800e98af8336784b607ac087c Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 10:59:50 -0700 Subject: [PATCH 050/427] Update to latest stable 1.9.18.2 --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index ed9f759..6714f11 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -6,8 +6,8 @@ %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} Name: uwsgi -Version: 1.9.17 -Release: 2%{dist} +Version: 1.9.18.2 +Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 From 5693898a00c16be8421f30ffab35859101c5713b Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 11:01:41 -0700 Subject: [PATCH 051/427] Breaking up full version in 3 parts Uwsgi is now using security patch numbering, which means more bits to be added to the version string --- uwsgi.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6714f11..4bc70a4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,4 +1,8 @@ -#Documentation sources: +# Version +%global majornumber 1.9 +%global minornumber 18 +%global patchnumber .2 +# Documentation sources: %global commit b86b3f7f183f90d874c8586d369c8cecc4347121 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -6,7 +10,7 @@ %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} Name: uwsgi -Version: 1.9.18.2 +Version: %{majornumber}.%{minornumber}%{?patchnumber} Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons From 05fc5af7c9cf7aba88390655a4fde518ad0fe315 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 11:07:11 -0700 Subject: [PATCH 052/427] Adding new sources, bumping up spec to 1.9.18.2 --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 5 +++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 2271198..63cfb9b 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,5 @@ /uwsgi-doc-1.9.17.tar.gz /uwsgi-1.9.17.tar.gz /uwsgi-docs-b86b3f7.tar.gz +/uwsgi-1.9.18.2.tar.gz +/uwsgi-docs-71f2d78.tar.gz diff --git a/sources b/sources index 2be9ae9..4ddd585 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -0e05fe94aa6065a65fb1f54b327f6702 uwsgi-1.9.17.tar.gz -90a1f014a95fd5e43ff9ba6052d4f24c uwsgi-docs-b86b3f7.tar.gz +dbc43696d03cdce9baa999b3791abfd3 uwsgi-1.9.18.2.tar.gz +c36e3d554f90df8cffe90521f45d00a4 uwsgi-docs-71f2d78.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index 4bc70a4..acceed6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -411,6 +411,11 @@ exit 0 %changelog +* Sat Oct 19 2013 Jorge A Gallegos - 1.9.18.2-1 +- Breaking up full version in 3 parts (Jorge Gallegos) +- Update to latest stable 1.9.18.2 (Jorge Gallegos) +- Forgot to disable debug mode (Jorge Gallegos) + * Wed Oct 09 2013 Jorge A Gallegos - 1.9.17-2 - Uploaded new sources per spec rework (Jorge Gallegos) - Adding more router plugins (Jorge Gallegos) From 56764684434cbf06d888826c3c85dac5a99e0574 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 11:10:18 -0700 Subject: [PATCH 053/427] Ugh messed up the doc sha --- uwsgi.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index acceed6..4033fea 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -2,8 +2,9 @@ %global majornumber 1.9 %global minornumber 18 %global patchnumber .2 + # Documentation sources: -%global commit b86b3f7f183f90d874c8586d369c8cecc4347121 +%global commit 71f2d78edf421f6d367c58a1fe4db31f64bc39b7 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} From 9ceca5d3e1c4e095796ca014a1911598fae16b1e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 23:00:57 -0700 Subject: [PATCH 054/427] Updated license to 'GPLv2 with exceptions' --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 4033fea..dbb65c5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -15,7 +15,7 @@ Version: %{majornumber}.%{minornumber}%{?patchnumber} Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons -License: GPLv2 +License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini @@ -412,7 +412,7 @@ exit 0 %changelog -* Sat Oct 19 2013 Jorge A Gallegos - 1.9.18.2-1 +* Sat Oct 19 2013 Jorge A Gallegos - 1.9.18.2-0 - Breaking up full version in 3 parts (Jorge Gallegos) - Update to latest stable 1.9.18.2 (Jorge Gallegos) - Forgot to disable debug mode (Jorge Gallegos) From d773c9cba0294a208c6a5e58c62fb5dc58393701 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 23:04:06 -0700 Subject: [PATCH 055/427] The jvm arm patch has been merged upstream --- uwsgi.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index dbb65c5..d467b53 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -26,7 +26,6 @@ Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch -Patch4: uwsgi_fix_jvm_in_arm.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel @@ -256,7 +255,6 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 -p1 %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini From 305cd5eb3ed59ae1dbc67c6efd4e394c0c37c0d6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 23:05:17 -0700 Subject: [PATCH 056/427] Adding more ignore entries Like VIM swap files, and backups, and the mockbuild dir --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 63cfb9b..b492bd7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,7 @@ *.src.rpm +*.swp +*~ +/results_uwsgi /uwsgi-1.0.4.tar.gz /uwsgi-1.2.3.tar.gz /uwsgi-wiki-doc-v41.txt From baaf45f282bff0ac4e56708d9d9aea64849d9bc9 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 23:09:29 -0700 Subject: [PATCH 057/427] The changelog entry must match major + minor --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index d467b53..325776b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -272,7 +272,7 @@ mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}%{_httpd_moddir} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz -cp docs/Changelog-%{version}.rst CHANGELOG +cp docs/Changelog-%{majornumber}.%{minornumber}.rst CHANGELOG echo "A copy of the documentation is included under the docs/" > README.Fedora echo "directory at commit %{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora From 0cb13fe004bfb7f7f8e77ad5beee2f42697267d0 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 23:11:25 -0700 Subject: [PATCH 058/427] Release 1.9.18.2-1 --- uwsgi.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 325776b..85be93f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -12,7 +12,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 0%{dist} +Release: 1%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -410,6 +410,14 @@ exit 0 %changelog +* Sun Oct 20 2013 Jorge A Gallegos - 1.9.18.2-1 +- The changelog entry must match major + minor (Jorge Gallegos) +- Adding more ignore entries (Jorge Gallegos) +- The jvm arm patch has been merged upstream (Jorge Gallegos) +- Updated license to 'GPLv2 with exceptions' (Jorge Gallegos) +- Ugh messed up the doc sha (Jorge Gallegos) +- Adding new sources, bumping up spec to 1.9.18.2 (Jorge Gallegos) + * Sat Oct 19 2013 Jorge A Gallegos - 1.9.18.2-0 - Breaking up full version in 3 parts (Jorge Gallegos) - Update to latest stable 1.9.18.2 (Jorge Gallegos) From f2f1dec487c84900013aa9706031f8a5fcc06f78 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 19 Oct 2013 23:14:41 -0700 Subject: [PATCH 059/427] Forgot to delete the jvm arm patch file --- uwsgi_fix_jvm_in_arm.patch | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 uwsgi_fix_jvm_in_arm.patch diff --git a/uwsgi_fix_jvm_in_arm.patch b/uwsgi_fix_jvm_in_arm.patch deleted file mode 100644 index ede93a2..0000000 --- a/uwsgi_fix_jvm_in_arm.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py -index ac7eb3e..3c0e097 100644 ---- a/plugins/jvm/uwsgiplugin.py -+++ b/plugins/jvm/uwsgiplugin.py -@@ -7,12 +7,14 @@ JVM_INCPATH = None - JVM_LIBPATH = None - - operating_system = os.uname()[0].lower() --arch = os.uname()[4] -+arch = os.uname()[4].lower() - - if arch in ('i686', 'x86', 'x86_32'): - arch = 'i386' - elif arch in ('x86_64',): - arch = 'amd64' -+elif arch.startswith('arm'): -+ arch = 'arm' - - # try to detect the JVM - if operating_system == 'darwin': From 952f174088822a5135bc96d01a47ca34e727010a Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 12 Nov 2013 08:56:39 -0800 Subject: [PATCH 060/427] Updating to latest stable, uploading new sources --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 5 ++--- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index b492bd7..e948e07 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,5 @@ /uwsgi-docs-b86b3f7.tar.gz /uwsgi-1.9.18.2.tar.gz /uwsgi-docs-71f2d78.tar.gz +/uwsgi-1.9.19.tar.gz +/uwsgi-docs-119b215.tar.gz diff --git a/sources b/sources index 4ddd585..f854c2d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -dbc43696d03cdce9baa999b3791abfd3 uwsgi-1.9.18.2.tar.gz -c36e3d554f90df8cffe90521f45d00a4 uwsgi-docs-71f2d78.tar.gz +1a6858130a4918de86410ccbf55945ae uwsgi-1.9.19.tar.gz +dec99082c6b1cad592136c7d1f02ff11 uwsgi-docs-119b215.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index 85be93f..ee5b1e9 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,9 @@ # Version %global majornumber 1.9 -%global minornumber 18 -%global patchnumber .2 +%global minornumber 19 # Documentation sources: -%global commit 71f2d78edf421f6d367c58a1fe4db31f64bc39b7 +%global commit 119b2154b6a90285b3f7fa9768d5268f72e87fd1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} From 97184c677208305f39ebbce53ca0515b7af3741c Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 12 Nov 2013 09:42:49 -0800 Subject: [PATCH 061/427] Bumping spec --- uwsgi.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index ee5b1e9..1962b4d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -409,6 +409,10 @@ exit 0 %changelog +* Tue Nov 12 2013 Jorge A Gallegos - 1.9.19-1 +- Updating to latest stable, uploading new sources (Jorge Gallegos) +- Forgot to delete the jvm arm patch file (Jorge Gallegos) + * Sun Oct 20 2013 Jorge A Gallegos - 1.9.18.2-1 - The changelog entry must match major + minor (Jorge Gallegos) - Adding more ignore entries (Jorge Gallegos) From 01bea43fc3ba941096fff7bf944de83975660df5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 29 Apr 2014 12:51:53 +0200 Subject: [PATCH 062/427] Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1962b4d..f078f0a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -11,7 +11,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 1%{dist} +Release: 2%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -409,6 +409,9 @@ exit 0 %changelog +* Tue Apr 29 2014 Vít Ondruch - 1.9.19-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1 + * Tue Nov 12 2013 Jorge A Gallegos - 1.9.19-1 - Updating to latest stable, uploading new sources (Jorge Gallegos) - Forgot to delete the jvm arm patch file (Jorge Gallegos) From faef56ca3f3f2ce7d24610f690973a492b79f9aa Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Wed, 28 May 2014 15:31:01 +0200 Subject: [PATCH 063/427] Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index f078f0a..4b0e4df 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -11,7 +11,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 2%{dist} +Release: 3%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -409,6 +409,9 @@ exit 0 %changelog +* Wed May 28 2014 Kalev Lember - 1.9.19-3 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 + * Tue Apr 29 2014 Vít Ondruch - 1.9.19-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1 From 6d16bb7cb19b74e83966c14ea6d0ac6cda21b443 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 7 Jun 2014 22:10:37 -0500 Subject: [PATCH 064/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 4b0e4df..06e705f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -11,7 +11,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 3%{dist} +Release: 4%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -409,6 +409,9 @@ exit 0 %changelog +* Sun Jun 08 2014 Fedora Release Engineering - 1.9.19-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Wed May 28 2014 Kalev Lember - 1.9.19-3 - Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 From c4aa80b3b7f83111623e4ad1a8ee91d86e8f253e Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Sun, 22 Jun 2014 12:44:10 +0200 Subject: [PATCH 065/427] rebuild for https://fedoraproject.org/wiki/Changes/Php56 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 06e705f..eb9b98d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -11,7 +11,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 4%{dist} +Release: 5%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -409,6 +409,9 @@ exit 0 %changelog +* Thu Jun 19 2014 Remi Collet - 1.9.19-5 +- rebuild for https://fedoraproject.org/wiki/Changes/Php56 + * Sun Jun 08 2014 Fedora Release Engineering - 1.9.19-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From fb7e41e7e047c7a9ce9e6cfec19eb8e944e993bf Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mon, 18 Aug 2014 07:22:41 +0000 Subject: [PATCH 066/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index eb9b98d..e8cc7f0 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -11,7 +11,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 5%{dist} +Release: 6%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -409,6 +409,9 @@ exit 0 %changelog +* Mon Aug 18 2014 Fedora Release Engineering - 1.9.19-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Thu Jun 19 2014 Remi Collet - 1.9.19-5 - rebuild for https://fedoraproject.org/wiki/Changes/Php56 From b6f51bd1bf6604097117b71f890f3f6ac260c58e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 20 Aug 2014 21:10:11 -0700 Subject: [PATCH 067/427] Adding new sources for newest stable From 9c9e5862d172e647015b7f9842c1b39858273e71 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 20 Aug 2014 21:13:46 -0700 Subject: [PATCH 068/427] Forgot docs --- .gitignore | 2 ++ sources | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index e948e07..c09c5ba 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,5 @@ /uwsgi-docs-71f2d78.tar.gz /uwsgi-1.9.19.tar.gz /uwsgi-docs-119b215.tar.gz +/uwsgi-2.0.6.tar.gz +/uwsgi-docs-d2c4969.tar.gz diff --git a/sources b/sources index f854c2d..7171f5e 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -1a6858130a4918de86410ccbf55945ae uwsgi-1.9.19.tar.gz -dec99082c6b1cad592136c7d1f02ff11 uwsgi-docs-119b215.tar.gz +5d2c7424b6edd2062687a03abdab0619 uwsgi-docs-d2c4969.tar.gz From b04c2904e220bf4cbe1d63ab22315f89aa59499d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 21 Aug 2014 15:50:18 -0700 Subject: [PATCH 069/427] Pre-bump for newest stable version in spec file --- uwsgi.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index e8cc7f0..d868b11 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,9 +1,9 @@ # Version -%global majornumber 1.9 -%global minornumber 19 +%global majornumber 2.0 +%global minornumber 6 # Documentation sources: -%global commit 119b2154b6a90285b3f7fa9768d5268f72e87fd1 +%global commit d2c4969e82c12b316889bcdce348d200b45c4a3e %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -11,7 +11,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}%{?patchnumber} -Release: 6%{dist} +Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions From 8459d79bcb46780985c23fb73853d22374f3cf78 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 21 Aug 2014 15:50:53 -0700 Subject: [PATCH 070/427] After careful inspection, it seems like this needs a value not just "true" --- fedora.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 614f861..773224c 100644 --- a/fedora.ini +++ b/fedora.ini @@ -1,7 +1,7 @@ [uwsgi] inherit = core bin_name = uwsgi -xml = true +xml = libxml2 yaml = true json = true pcre = true From 3770c83e769af0ea66c1eb6bf6a638ff206e8e20 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 23 Aug 2014 15:17:07 -0700 Subject: [PATCH 071/427] Tackling several issues Solving BZ 1113307 Starting to tackle BZ 911686 --- fedora.ini | 2 +- uwsgi.spec | 31 +++++-------------------------- 2 files changed, 6 insertions(+), 27 deletions(-) diff --git a/fedora.ini b/fedora.ini index 773224c..83d6d25 100644 --- a/fedora.ini +++ b/fedora.ini @@ -12,4 +12,4 @@ xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc embedded_plugins = echo, ping, corerouter, http, logfile, logsocket, syslog, rsyslog, redislog, mongodblog -plugins = rack, psgi, python, nagios, fastrouter, admin, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, erlang, pyerl, pam, jvm, zergpool, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rawrouter, sslrouter +plugins = rack, psgi, python, nagios, fastrouter, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, pam, jvm, zergpool, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rawrouter, sslrouter diff --git a/uwsgi.spec b/uwsgi.spec index d868b11..c266540 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -29,12 +29,14 @@ BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-deve BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel -BuildRequires: bzip2-devel, gmp-devel, systemd-units, erlang, pam-devel -BuildRequires: java-1.7.0-openjdk-devel, sqlite-devel, libcap-devel +BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel +BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 +Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 +Obsoletes: %{name}-plugin-admin <= 2.0 Provides: %{name}-loggers = %{version}-%{release} Requires(pre): shadow-utils @@ -114,14 +116,6 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-fastrouter This package contains the fastrouter (proxy) plugin for uWSGI -%package -n %{name}-plugin-admin -Summary: uWSGI - Plugin for Admin support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-admin -This package contains the admin plugin for uWSGI - %package -n %{name}-plugin-python3 Summary: uWSGI - Plugin for Python 3.2 support Group: System Environment/Daemons @@ -178,14 +172,6 @@ Requires: rrdtool, %{name}-plugin-common %description -n %{name}-plugin-rrdtool This package contains the RRD Tool plugin for uWSGI -%package -n %{name}-plugin-erlang -Summary: uWSGI - Plugin for erlang support -Group: System Environment/Daemons -Requires: %{name}-plugin-common, erlang - -%description -n %{name}-plugin-erlang -This package contains the erlang plugin for uWSGI - %package -n %{name}-plugin-pam Summary: uWSGI - Plugin for PAM support Group: System Environment/Daemons @@ -197,7 +183,7 @@ This package contains the PAM plugin for uWSGI %package -n %{name}-plugin-jvm Summary: uWSGI - Plugin for JVM support Group: System Environment/Daemons -Requires: %{name}-plugin-common, java-1.7.0-openjdk +Requires: %{name}-plugin-common, java-headless, jpackage-utils %description -n %{name}-plugin-jvm This package contains the JVM plugin for uWSGI @@ -357,9 +343,6 @@ exit 0 %files -n %{name}-plugin-fastrouter %{_libdir}/%{name}/fastrouter_plugin.so -%files -n %{name}-plugin-admin -%{_libdir}/%{name}/admin_plugin.so - %files -n %{name}-plugin-python3 %{_libdir}/%{name}/python3_plugin.so @@ -381,10 +364,6 @@ exit 0 %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so -%files -n %{name}-plugin-erlang -%{_libdir}/%{name}/erlang_plugin.so -%{_libdir}/%{name}/pyerl_plugin.so - %files -n %{name}-plugin-pam %{_libdir}/%{name}/pam_plugin.so From ef1d3900ce784dcf3f9dd04393b443a3e52fc9e6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 26 Aug 2014 11:56:56 -0700 Subject: [PATCH 072/427] Embed logcrypto and logpipe in the binary --- fedora.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 83d6d25..e8e6095 100644 --- a/fedora.ini +++ b/fedora.ini @@ -11,5 +11,5 @@ ssl = true xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc -embedded_plugins = echo, ping, corerouter, http, logfile, logsocket, syslog, rsyslog, redislog, mongodblog +embedded_plugins = corerouter, echo, http, logcrypto, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog plugins = rack, psgi, python, nagios, fastrouter, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, pam, jvm, zergpool, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rawrouter, sslrouter From 314d494b918abfa92cf95824780e939156575765 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 26 Aug 2014 14:37:57 -0700 Subject: [PATCH 073/427] Adding -logger-zeromq plugin --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index e8e6095..cfb524d 100644 --- a/fedora.ini +++ b/fedora.ini @@ -12,4 +12,4 @@ xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc embedded_plugins = corerouter, echo, http, logcrypto, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = rack, psgi, python, nagios, fastrouter, ruby19, cache, cgi, rpc, ugreen, greenlet, lua, php, carbon, rrdtool, pam, jvm, zergpool, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rawrouter, sslrouter +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index c266540..4771e20 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -31,7 +31,7 @@ BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-deve BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel -BuildRequires: httpd-devel, tcp_wrappers-devel +BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 @@ -220,6 +220,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-rawrouter This package contains the Raw router plugin for uWSGI +%package -n %{name}-logger-zeromq +Summary: uWSGI - ZeroMQ logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, zeromq + +%description -n %{name}-logger-zeromq +This package contains the ZeroMQ logger plugin for uWSGI + %package -n mod_proxy_%{name} Summary: uWSGI - Apache2 proxy module Group: System Environment/Daemons @@ -383,6 +391,9 @@ exit 0 %files -n %{name}-plugin-rawrouter %{_libdir}/%{name}/rawrouter_plugin.so +%files -n %{name}-logger-zeromq +%{_libdir}/%{name}/logzmq_plugin.so + %files -n mod_proxy_%{name} %{_httpd_moddir}/mod_proxy_%{name}.so From 240338b58c49a7c0e4f94d4999a179759e71423d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 26 Aug 2014 15:32:52 -0700 Subject: [PATCH 074/427] Adding -logger-systemd plugin --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index cfb524d..4ff08a7 100644 --- a/fedora.ini +++ b/fedora.ini @@ -12,4 +12,4 @@ xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc embedded_plugins = corerouter, echo, http, logcrypto, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, ugreen, zergpool +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 4771e20..ebc7e51 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -30,7 +30,7 @@ BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel -BuildRequires: java-devel, sqlite-devel, libcap-devel +BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 @@ -228,6 +228,14 @@ Requires: %{name}-plugin-common, zeromq %description -n %{name}-logger-zeromq This package contains the ZeroMQ logger plugin for uWSGI +%package -n %{name}-logger-systemd +Summary: uWSGI - SystemD Journal logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-logger-systemd +This package contains the SystemD Journal logger plugin for uWSGI + %package -n mod_proxy_%{name} Summary: uWSGI - Apache2 proxy module Group: System Environment/Daemons @@ -394,6 +402,9 @@ exit 0 %files -n %{name}-logger-zeromq %{_libdir}/%{name}/logzmq_plugin.so +%files -n %{name}-logger-systemd +%{_libdir}/%{name}/systemd_logger_plugin.so + %files -n mod_proxy_%{name} %{_httpd_moddir}/mod_proxy_%{name}.so From ec9693128f635c562a8c1f31a0ba14eb71c2ef18 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 27 Aug 2014 08:11:13 -0700 Subject: [PATCH 075/427] Realized this Obsoletes has been wrong for a long time --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ebc7e51..dedf525 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -34,7 +34,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 -Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 +Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 Obsoletes: %{name}-plugin-admin <= 2.0 Provides: %{name}-loggers = %{version}-%{release} From 6fa61b2046c56f53d3c9a1478d9992dc1f108bf5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 27 Aug 2014 08:11:39 -0700 Subject: [PATCH 076/427] Adding more router_* plugins metrics, radius, and spngeo --- fedora.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 4ff08a7..97782f6 100644 --- a/fedora.ini +++ b/fedora.ini @@ -12,4 +12,4 @@ xml_implementation = libxml2 yaml_implementation = auto malloc_implementation = libc embedded_plugins = corerouter, echo, http, logcrypto, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_redirect, router_redis, router_rewrite, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool From 39dd1c604759db89e892ce6c5e23d6b4f411e2aa Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 27 Aug 2014 14:18:24 -0700 Subject: [PATCH 077/427] Splitting out the README, I will be putting more stuff in here --- README.Fedora | 2 ++ uwsgi.spec | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 README.Fedora diff --git a/README.Fedora b/README.Fedora new file mode 100644 index 0000000..b39e7fa --- /dev/null +++ b/README.Fedora @@ -0,0 +1,2 @@ +A copy of the documentation is included under the docs/ + diff --git a/uwsgi.spec b/uwsgi.spec index dedf525..842f804 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -21,6 +21,7 @@ Source1: fedora.ini Source2: uwsgi.service Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz +Source5: README.Fedora Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch @@ -251,6 +252,7 @@ cp -p %{SOURCE1} buildconf/ cp -p %{SOURCE2} %{name}.service cp -p %{SOURCE3} %{name}.ini cp -p %{SOURCE4} uwsgi-docs.tar.gz +cp -p %{SOURCE5} README.Fedora echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 %patch1 -p1 @@ -274,7 +276,6 @@ mkdir -p %{buildroot}%{_httpd_moddir} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{majornumber}.%{minornumber}.rst CHANGELOG -echo "A copy of the documentation is included under the docs/" > README.Fedora echo "directory at commit %{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} From e537945df4097c9c3cc49170e580ae21cc71a4d4 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 27 Aug 2014 15:32:02 -0700 Subject: [PATCH 078/427] Updating sources, not sure why these didn't go out --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index 7171f5e..ff8d44d 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ +50e9657ebbf52dd3bcd57b565f6b65a5 uwsgi-2.0.6.tar.gz 5d2c7424b6edd2062687a03abdab0619 uwsgi-docs-d2c4969.tar.gz From b3c615d5ef8122fae3b4a97437f6c22a6c97a2d8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 27 Aug 2014 16:05:50 -0700 Subject: [PATCH 079/427] Updating build profile There are some options that don't exist anymore, and there are some other options that changed what type of value they can read. --- fedora.ini | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/fedora.ini b/fedora.ini index 97782f6..6a668ba 100644 --- a/fedora.ini +++ b/fedora.ini @@ -2,14 +2,11 @@ inherit = core bin_name = uwsgi xml = libxml2 -yaml = true -json = true -pcre = true -routing = true -sqlite3 = true -ssl = true -xml_implementation = libxml2 -yaml_implementation = auto +yaml = libyaml +json = jansson +pcre = auto +routing = auto +ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, http, logcrypto, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool From a0237020ee5ba7a323058b632de0f598062b91c8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 11:17:20 -0700 Subject: [PATCH 080/427] Splitting -router-fastrouter out of -common --- uwsgi.spec | 54 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 842f804..e2066b7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -37,7 +37,7 @@ Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 -Obsoletes: %{name}-plugin-admin <= 2.0 +Obsoletes: %{name}-plugin-admin <= 2.0.6 Provides: %{name}-loggers = %{version}-%{release} Requires(pre): shadow-utils @@ -77,11 +77,31 @@ Requires: %{name} This package contains the most common plugins used with uWSGI. The plugins included in this package are: cache, CGI, RPC, uGreen +# Loggers + +%package -n %{name}-logger-zeromq +Summary: uWSGI - ZeroMQ logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, zeromq + +%description -n %{name}-logger-zeromq +This package contains the ZeroMQ logger plugin for uWSGI + +%package -n %{name}-logger-systemd +Summary: uWSGI - SystemD Journal logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-logger-systemd +This package contains the SystemD Journal logger plugin for uWSGI + %package -n %{name}-plugin-rack Summary: uWSGI - Ruby rack plugin Group: System Environment/Daemons Requires: rubygem-rack, %{name}-plugin-common +# Plugins + %description -n %{name}-plugin-rack This package contains the rack plugin for uWSGI @@ -109,14 +129,6 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-nagios This package contains the nagios plugin for uWSGI -%package -n %{name}-plugin-fastrouter -Summary: uWSGI - Plugin for FastRouter support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-fastrouter -This package contains the fastrouter (proxy) plugin for uWSGI - %package -n %{name}-plugin-python3 Summary: uWSGI - Plugin for Python 3.2 support Group: System Environment/Daemons @@ -221,21 +233,19 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-rawrouter This package contains the Raw router plugin for uWSGI -%package -n %{name}-logger-zeromq -Summary: uWSGI - ZeroMQ logger plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common, zeromq +# Routers -%description -n %{name}-logger-zeromq -This package contains the ZeroMQ logger plugin for uWSGI +%package -n %{name}-router-fastrouter +Summary: uWSGI - Plugin for FastRouter support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-plugin-fastrouter <= 2.0.6 +Provides: %{name}-plugin-fastrouter = %{version}-%{release} -%package -n %{name}-logger-systemd -Summary: uWSGI - SystemD Journal logger plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common +%description -n %{name}-router-fastrouter +This package contains the fastrouter (proxy) plugin for uWSGI -%description -n %{name}-logger-systemd -This package contains the SystemD Journal logger plugin for uWSGI +# The rest %package -n mod_proxy_%{name} Summary: uWSGI - Apache2 proxy module @@ -357,7 +367,7 @@ exit 0 %files -n %{name}-plugin-nagios %{_libdir}/%{name}/nagios_plugin.so -%files -n %{name}-plugin-fastrouter +%files -n %{name}-router-fastrouter %{_libdir}/%{name}/fastrouter_plugin.so %files -n %{name}-plugin-python3 From 4cfc2d5fd0553f51dd78794935189e6b3453e4dd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 11:27:25 -0700 Subject: [PATCH 081/427] Reorganized spec, alphabetical and type --- uwsgi.spec | 222 +++++++++++++++++++++++++++-------------------------- 1 file changed, 115 insertions(+), 107 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index e2066b7..b945e80 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -79,14 +79,6 @@ plugins included in this package are: cache, CGI, RPC, uGreen # Loggers -%package -n %{name}-logger-zeromq -Summary: uWSGI - ZeroMQ logger plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common, zeromq - -%description -n %{name}-logger-zeromq -This package contains the ZeroMQ logger plugin for uWSGI - %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -95,15 +87,71 @@ Requires: %{name}-plugin-common %description -n %{name}-logger-systemd This package contains the SystemD Journal logger plugin for uWSGI -%package -n %{name}-plugin-rack -Summary: uWSGI - Ruby rack plugin +%package -n %{name}-logger-zeromq +Summary: uWSGI - ZeroMQ logger plugin Group: System Environment/Daemons -Requires: rubygem-rack, %{name}-plugin-common +Requires: %{name}-plugin-common, zeromq + +%description -n %{name}-logger-zeromq +This package contains the ZeroMQ logger plugin for uWSGI # Plugins -%description -n %{name}-plugin-rack -This package contains the rack plugin for uWSGI +%package -n %{name}-plugin-carbon +Summary: uWSGI - Plugin for Carbon/Graphite support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-carbon +This package contains the Carbon plugin for uWSGI (to use in graphite) + +%package -n %{name}-plugin-greenlet +Summary: uWSGI - Plugin for Python Greenlet support +Group: System Environment/Daemons +Requires: python-greenlet, %{name}-plugin-common + +%description -n %{name}-plugin-greenlet +This package contains the python greenlet plugin for uWSGI + +%package -n %{name}-plugin-jvm +Summary: uWSGI - Plugin for JVM support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, java-headless, jpackage-utils + +%description -n %{name}-plugin-jvm +This package contains the JVM plugin for uWSGI + +%package -n %{name}-plugin-lua +Summary: uWSGI - Plugin for LUA support +Group: System Environment/Daemons +Requires: lua, %{name}-plugin-common + +%description -n %{name}-plugin-lua +This package contains the lua plugin for uWSGI + +%package -n %{name}-plugin-nagios +Summary: uWSGI - Plugin for Nagios support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-nagios +This package contains the nagios plugin for uWSGI + +%package -n %{name}-plugin-pam +Summary: uWSGI - Plugin for PAM support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, pam + +%description -n %{name}-plugin-pam +This package contains the PAM plugin for uWSGI + +%package -n %{name}-plugin-php +Summary: uWSGI - Plugin for PHP support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-php +This package contains the PHP plugin for uWSGI %package -n %{name}-plugin-psgi Summary: uWSGI - Plugin for PSGI support @@ -121,14 +169,6 @@ Requires: python, %{name}-plugin-common %description -n %{name}-plugin-python This package contains the python plugin for uWSGI -%package -n %{name}-plugin-nagios -Summary: uWSGI - Plugin for Nagios support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-nagios -This package contains the nagios plugin for uWSGI - %package -n %{name}-plugin-python3 Summary: uWSGI - Plugin for Python 3.2 support Group: System Environment/Daemons @@ -137,45 +177,13 @@ Requires: python3, %{name}-plugin-common %description -n %{name}-plugin-python3 This package contains the Python 3.2 plugin for uWSGI -%package -n %{name}-plugin-ruby -Summary: uWSGI - Plugin for Ruby support -Group: System Environment/Daemons -Requires: ruby, %{name}-plugin-common - -%description -n %{name}-plugin-ruby -This package contains the Ruby 1.9 plugin for uWSGI - -%package -n %{name}-plugin-greenlet -Summary: uWSGI - Plugin for Python Greenlet support -Group: System Environment/Daemons -Requires: python-greenlet, %{name}-plugin-common - -%description -n %{name}-plugin-greenlet -This package contains the python greenlet plugin for uWSGI - -%package -n %{name}-plugin-lua -Summary: uWSGI - Plugin for LUA support -Group: System Environment/Daemons -Requires: lua, %{name}-plugin-common - -%description -n %{name}-plugin-lua -This package contains the lua plugin for uWSGI - -%package -n %{name}-plugin-php -Summary: uWSGI - Plugin for PHP support +%package -n %{name}-plugin-rack +Summary: uWSGI - Ruby rack plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: rubygem-rack, %{name}-plugin-common -%description -n %{name}-plugin-php -This package contains the PHP plugin for uWSGI - -%package -n %{name}-plugin-carbon -Summary: uWSGI - Plugin for Carbon/Graphite support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-carbon -This package contains the Carbon plugin for uWSGI (to use in graphite) +%description -n %{name}-plugin-rack +This package contains the rack plugin for uWSGI %package -n %{name}-plugin-rrdtool Summary: uWSGI - Plugin for RRDTool support @@ -185,21 +193,13 @@ Requires: rrdtool, %{name}-plugin-common %description -n %{name}-plugin-rrdtool This package contains the RRD Tool plugin for uWSGI -%package -n %{name}-plugin-pam -Summary: uWSGI - Plugin for PAM support -Group: System Environment/Daemons -Requires: %{name}-plugin-common, pam +%package -n %{name}-plugin-ruby +Summary: uWSGI - Plugin for Ruby support +Group: System Environment/Daemons +Requires: ruby, %{name}-plugin-common -%description -n %{name}-plugin-pam -This package contains the PAM plugin for uWSGI - -%package -n %{name}-plugin-jvm -Summary: uWSGI - Plugin for JVM support -Group: System Environment/Daemons -Requires: %{name}-plugin-common, java-headless, jpackage-utils - -%description -n %{name}-plugin-jvm -This package contains the JVM plugin for uWSGI +%description -n %{name}-plugin-ruby +This package contains the Ruby 1.9 plugin for uWSGI %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support @@ -209,6 +209,8 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-zergpool This package contains the zergpool plugin for uWSGI +# Routers + %package -n %{name}-routers Summary: uWSGI - Router plugins Group: System Environment/Daemons @@ -233,8 +235,6 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-rawrouter This package contains the Raw router plugin for uWSGI -# Routers - %package -n %{name}-router-fastrouter Summary: uWSGI - Plugin for FastRouter support Group: System Environment/Daemons @@ -355,8 +355,37 @@ exit 0 %{_libdir}/%{name}/rpc_plugin.so %{_libdir}/%{name}/ugreen_plugin.so -%files -n %{name}-plugin-rack -%{_libdir}/%{name}/rack_plugin.so +# Loggers + +%files -n %{name}-logger-systemd +%{_libdir}/%{name}/systemd_logger_plugin.so + +%files -n %{name}-logger-zeromq +%{_libdir}/%{name}/logzmq_plugin.so + +# Plugins + +%files -n %{name}-plugin-carbon +%{_libdir}/%{name}/carbon_plugin.so + +%files -n %{name}-plugin-greenlet +%{_libdir}/%{name}/greenlet_plugin.so + +%files -n %{name}-plugin-jvm +%{_libdir}/%{name}/jvm_plugin.so +%{_javadir}/uwsgi.jar + +%files -n %{name}-plugin-lua +%{_libdir}/%{name}/lua_plugin.so + +%files -n %{name}-plugin-nagios +%{_libdir}/%{name}/nagios_plugin.so + +%files -n %{name}-plugin-pam +%{_libdir}/%{name}/pam_plugin.so + +%files -n %{name}-plugin-php +%{_libdir}/%{name}/php_plugin.so %files -n %{name}-plugin-psgi %{_libdir}/%{name}/psgi_plugin.so @@ -364,57 +393,36 @@ exit 0 %files -n %{name}-plugin-python %{_libdir}/%{name}/python_plugin.so -%files -n %{name}-plugin-nagios -%{_libdir}/%{name}/nagios_plugin.so - -%files -n %{name}-router-fastrouter -%{_libdir}/%{name}/fastrouter_plugin.so - %files -n %{name}-plugin-python3 %{_libdir}/%{name}/python3_plugin.so -%files -n %{name}-plugin-ruby -%{_libdir}/%{name}/ruby19_plugin.so - -%files -n %{name}-plugin-greenlet -%{_libdir}/%{name}/greenlet_plugin.so - -%files -n %{name}-plugin-lua -%{_libdir}/%{name}/lua_plugin.so - -%files -n %{name}-plugin-php -%{_libdir}/%{name}/php_plugin.so - -%files -n %{name}-plugin-carbon -%{_libdir}/%{name}/carbon_plugin.so +%files -n %{name}-plugin-rack +%{_libdir}/%{name}/rack_plugin.so %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so -%files -n %{name}-plugin-pam -%{_libdir}/%{name}/pam_plugin.so - -%files -n %{name}-plugin-jvm -%{_libdir}/%{name}/jvm_plugin.so -%{_javadir}/uwsgi.jar +%files -n %{name}-plugin-ruby +%{_libdir}/%{name}/ruby19_plugin.so %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so +# Routers + %files -n %{name}-routers %{_libdir}/%{name}/router_*_plugin.so +%files -n %{name}-router-fastrouter +%{_libdir}/%{name}/fastrouter_plugin.so + %files -n %{name}-plugin-sslrouter %{_libdir}/%{name}/sslrouter_plugin.so %files -n %{name}-plugin-rawrouter %{_libdir}/%{name}/rawrouter_plugin.so -%files -n %{name}-logger-zeromq -%{_libdir}/%{name}/logzmq_plugin.so - -%files -n %{name}-logger-systemd -%{_libdir}/%{name}/systemd_logger_plugin.so +# The rest %files -n mod_proxy_%{name} %{_httpd_moddir}/mod_proxy_%{name}.so From 8265cb589b4c3a3766b089f54a8fd5ecb35128e8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 11:32:01 -0700 Subject: [PATCH 082/427] Break out the major/minor/release numbers properly --- uwsgi.spec | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index b945e80..53240a9 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,6 +1,7 @@ # Version -%global majornumber 2.0 -%global minornumber 6 +%global majornumber 2 +%global minornumber 0 +%global releasenumber 6 # Documentation sources: %global commit d2c4969e82c12b316889bcdce348d200b45c4a3e @@ -10,7 +11,7 @@ %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} Name: uwsgi -Version: %{majornumber}.%{minornumber}%{?patchnumber} +Version: %{majornumber}.%{minornumber}.%{releasenumber}%{?patchnumber} Release: 0%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons @@ -285,7 +286,7 @@ mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}%{_httpd_moddir} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz -cp docs/Changelog-%{majornumber}.%{minornumber}.rst CHANGELOG +cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG echo "directory at commit %{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} From c2885f15f982a5ee1222e612d5a35a1dfd15d137 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 11:43:09 -0700 Subject: [PATCH 083/427] Splitting off -logger-crypto instead --- fedora.ini | 4 ++-- uwsgi.spec | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 6a668ba..8dec957 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, logcrypto, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 53240a9..4597082 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -80,6 +80,14 @@ plugins included in this package are: cache, CGI, RPC, uGreen # Loggers +%package -n %{name}-logger-crypto +Summary: uWSGI - LogCrypto logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-logger-crypto +This package contains the LogCrypto logger plugin for uWSGI + %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -358,6 +366,9 @@ exit 0 # Loggers +%files -n %{name}-logger-crypto +%{_libdir}/%{name}/logcrypto_plugin.so + %files -n %{name}-logger-systemd %{_libdir}/%{name}/systemd_logger_plugin.so From 3ba9cc81cea0804d94f4e25ef1b01453af8826a5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 11:53:11 -0700 Subject: [PATCH 084/427] Splitting off -logger-pipe --- fedora.ini | 4 ++-- uwsgi.spec | 15 +++++++++++++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/fedora.ini b/fedora.ini index 8dec957..e1aca54 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, logfile, logpipe, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, logfile, logsocket, mongodblog, ping, redislog, rsyslog, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logpipe, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 4597082..e30b834 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -81,12 +81,20 @@ plugins included in this package are: cache, CGI, RPC, uGreen # Loggers %package -n %{name}-logger-crypto -Summary: uWSGI - LogCrypto logger plugin +Summary: uWSGI - logcrypto logger plugin Group: System Environment/Daemons Requires: %{name}-plugin-common %description -n %{name}-logger-crypto -This package contains the LogCrypto logger plugin for uWSGI +This package contains the logcrypto logger plugin for uWSGI + +%package -n %{name}-logger-pipe +Summary: uWSGI - logpipe logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-logger-pipe +This package contains the logcrypto logger plugin for uWSGI %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin @@ -369,6 +377,9 @@ exit 0 %files -n %{name}-logger-crypto %{_libdir}/%{name}/logcrypto_plugin.so +%files -n %{name}-logger-pipe +%{_libdir}/%{name}/logpipe_plugin.so + %files -n %{name}-logger-systemd %{_libdir}/%{name}/systemd_logger_plugin.so From 1682bf6bf6dd53417eb06a68872cbb5ca4da4fc7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 12:02:52 -0700 Subject: [PATCH 085/427] Splitting off -logger-logfile --- fedora.ini | 4 ++-- uwsgi.spec | 26 +++++++++++++++++++------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/fedora.ini b/fedora.ini index e1aca54..428f778 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, logfile, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logpipe, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, logsocket, mongodblog, ping, redislog, rsyslog, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index e30b834..d117e59 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -39,7 +39,6 @@ Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 Obsoletes: %{name}-plugin-admin <= 2.0.6 -Provides: %{name}-loggers = %{version}-%{release} Requires(pre): shadow-utils Requires(post): systemd-units @@ -80,20 +79,30 @@ plugins included in this package are: cache, CGI, RPC, uGreen # Loggers -%package -n %{name}-logger-crypto +%package -n %{name}-logger-logcrypto Summary: uWSGI - logcrypto logger plugin Group: System Environment/Daemons Requires: %{name}-plugin-common -%description -n %{name}-logger-crypto +%description -n %{name}-logger-logcrypto This package contains the logcrypto logger plugin for uWSGI -%package -n %{name}-logger-pipe +%package -n %{name}-logger-logfile +Summary: uWSGI - logfile logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-loggers <= 1.9.8-1 +Provides: %{name}-loggers = %{version}-%{release} + +%description -n %{name}-logger-logfile +This package contains the logfile logger plugin for uWSGI + +%package -n %{name}-logger-logpipe Summary: uWSGI - logpipe logger plugin Group: System Environment/Daemons Requires: %{name}-plugin-common -%description -n %{name}-logger-pipe +%description -n %{name}-logger-logpipe This package contains the logcrypto logger plugin for uWSGI %package -n %{name}-logger-systemd @@ -374,10 +383,13 @@ exit 0 # Loggers -%files -n %{name}-logger-crypto +%files -n %{name}-logger-logcrypto %{_libdir}/%{name}/logcrypto_plugin.so -%files -n %{name}-logger-pipe +%files -n %{name}-logger-logfile +%{_libdir}/%{name}/logfile_plugin.so + +%files -n %{name}-logger-logpipe %{_libdir}/%{name}/logpipe_plugin.so %files -n %{name}-logger-systemd From b10818cfd24d5570323f2a732c8228f72831fd4b Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 12:05:27 -0700 Subject: [PATCH 086/427] Splitting off -logger-logsocket --- fedora.ini | 4 ++-- uwsgi.spec | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 428f778..485941f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, logsocket, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, mongodblog, ping, redislog, rsyslog, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index d117e59..e0978f6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -105,6 +105,16 @@ Requires: %{name}-plugin-common %description -n %{name}-logger-logpipe This package contains the logcrypto logger plugin for uWSGI +%package -n %{name}-logger-logsocket +Summary: uWSGI - logsocket logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-loggers <= 1.9.8-1 +Provides: %{name}-loggers = %{version}-%{release} + +%description -n %{name}-logger-logsocket +This package contains the logsocket logger plugin for uWSGI + %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -392,6 +402,9 @@ exit 0 %files -n %{name}-logger-logpipe %{_libdir}/%{name}/logpipe_plugin.so +%files -n %{name}-logger-logsocket +%{_libdir}/%{name}/logsocket_plugin.so + %files -n %{name}-logger-systemd %{_libdir}/%{name}/systemd_logger_plugin.so From fe6ac436b6ec31687d475d068ef9535d2bcd128e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 12:07:10 -0700 Subject: [PATCH 087/427] Splitting off -logger-mongodb --- fedora.ini | 4 ++-- uwsgi.spec | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 485941f..e9fca08 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, mongodblog, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, ping, redislog, rsyslog, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index e0978f6..b57344e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,6 +115,16 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-logsocket This package contains the logsocket logger plugin for uWSGI +%package -n %{name}-logger-mongodb +Summary: uWSGI - mongodblog logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-loggers <= 1.9.8-1 +Provides: %{name}-loggers = %{version}-%{release} + +%description -n %{name}-logger-mongodb +This package contains the mongodblog logger plugin for uWSGI + %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -405,6 +415,9 @@ exit 0 %files -n %{name}-logger-logsocket %{_libdir}/%{name}/logsocket_plugin.so +%files -n %{name}-logger-mongodb +%{_libdir}/%{name}/logsocket_plugin.so + %files -n %{name}-logger-systemd %{_libdir}/%{name}/systemd_logger_plugin.so From 2477d1e79a3bcd643d7a04e95778a0c46d44c205 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 12:08:42 -0700 Subject: [PATCH 088/427] I go back and forth between naming I think I should stick with this one tho --- uwsgi.spec | 58 +++++++++++++++++++++++++++--------------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index b57344e..37a63a4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -79,42 +79,24 @@ plugins included in this package are: cache, CGI, RPC, uGreen # Loggers -%package -n %{name}-logger-logcrypto +%package -n %{name}-logger-crypto Summary: uWSGI - logcrypto logger plugin Group: System Environment/Daemons Requires: %{name}-plugin-common -%description -n %{name}-logger-logcrypto +%description -n %{name}-logger-crypto This package contains the logcrypto logger plugin for uWSGI -%package -n %{name}-logger-logfile +%package -n %{name}-logger-file Summary: uWSGI - logfile logger plugin Group: System Environment/Daemons Requires: %{name}-plugin-common Obsoletes: %{name}-loggers <= 1.9.8-1 Provides: %{name}-loggers = %{version}-%{release} -%description -n %{name}-logger-logfile +%description -n %{name}-logger-file This package contains the logfile logger plugin for uWSGI -%package -n %{name}-logger-logpipe -Summary: uWSGI - logpipe logger plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-logger-logpipe -This package contains the logcrypto logger plugin for uWSGI - -%package -n %{name}-logger-logsocket -Summary: uWSGI - logsocket logger plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common -Obsoletes: %{name}-loggers <= 1.9.8-1 -Provides: %{name}-loggers = %{version}-%{release} - -%description -n %{name}-logger-logsocket -This package contains the logsocket logger plugin for uWSGI - %package -n %{name}-logger-mongodb Summary: uWSGI - mongodblog logger plugin Group: System Environment/Daemons @@ -125,6 +107,24 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-mongodb This package contains the mongodblog logger plugin for uWSGI +%package -n %{name}-logger-pipe +Summary: uWSGI - logpipe logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-logger-pipe +This package contains the logcrypto logger plugin for uWSGI + +%package -n %{name}-logger-socket +Summary: uWSGI - logsocket logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-loggers <= 1.9.8-1 +Provides: %{name}-loggers = %{version}-%{release} + +%description -n %{name}-logger-socket +This package contains the logsocket logger plugin for uWSGI + %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -403,19 +403,19 @@ exit 0 # Loggers -%files -n %{name}-logger-logcrypto +%files -n %{name}-logger-crypto %{_libdir}/%{name}/logcrypto_plugin.so -%files -n %{name}-logger-logfile +%files -n %{name}-logger-file %{_libdir}/%{name}/logfile_plugin.so -%files -n %{name}-logger-logpipe -%{_libdir}/%{name}/logpipe_plugin.so - -%files -n %{name}-logger-logsocket +%files -n %{name}-logger-mongodb %{_libdir}/%{name}/logsocket_plugin.so -%files -n %{name}-logger-mongodb +%files -n %{name}-logger-pipe +%{_libdir}/%{name}/logpipe_plugin.so + +%files -n %{name}-logger-socket %{_libdir}/%{name}/logsocket_plugin.so %files -n %{name}-logger-systemd From 94c778df605a63edfd4a4eddfee2691244a04cbe Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 12:17:22 -0700 Subject: [PATCH 089/427] Splitting off -logger-redis --- fedora.ini | 4 ++-- uwsgi.spec | 13 +++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index e9fca08..aa5d556 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, ping, redislog, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, ping, rsyslog, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 37a63a4..bf00c4d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,6 +115,16 @@ Requires: %{name}-plugin-common %description -n %{name}-logger-pipe This package contains the logcrypto logger plugin for uWSGI +%package -n %{name}-logger-redis +Summary: uWSGI - redislog logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-loggers <= 1.9.8-1 +Provides: %{name}-loggers = %{version}-%{release} + +%description -n %{name}-logger-redis +This package contains the redislog logger plugin for uWSGI + %package -n %{name}-logger-socket Summary: uWSGI - logsocket logger plugin Group: System Environment/Daemons @@ -415,6 +425,9 @@ exit 0 %files -n %{name}-logger-pipe %{_libdir}/%{name}/logpipe_plugin.so +%files -n %{name}-logger-redis +%{_libdir}/%{name}/logsocket_plugin.so + %files -n %{name}-logger-socket %{_libdir}/%{name}/logsocket_plugin.so From e35132d26c0914997b056dbd45f4a9eaaa27aa6d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 13:13:27 -0700 Subject: [PATCH 090/427] Packaging the right files for mongodb and redis --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index bf00c4d..f46726c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -420,13 +420,13 @@ exit 0 %{_libdir}/%{name}/logfile_plugin.so %files -n %{name}-logger-mongodb -%{_libdir}/%{name}/logsocket_plugin.so +%{_libdir}/%{name}/mongodblog_plugin.so %files -n %{name}-logger-pipe %{_libdir}/%{name}/logpipe_plugin.so %files -n %{name}-logger-redis -%{_libdir}/%{name}/logsocket_plugin.so +%{_libdir}/%{name}/redislog_plugin.so %files -n %{name}-logger-socket %{_libdir}/%{name}/logsocket_plugin.so From 541ccbafde864f0f7d4a37c6354db4430186aa87 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 14:58:25 -0700 Subject: [PATCH 091/427] Splitting off -logger-rsyslog --- fedora.ini | 4 ++-- uwsgi.spec | 14 +++++++++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/fedora.ini b/fedora.ini index aa5d556..28cf0c2 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, ping, rsyslog, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, ping, syslog +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index f46726c..de87d5a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,7 +35,6 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel Obsoletes: %{name}-loggers <= 1.9.8-1 -Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 Obsoletes: %{name}-plugin-admin <= 2.0.6 @@ -125,6 +124,16 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-redis This package contains the redislog logger plugin for uWSGI +%package -n %{name}-logger-rsyslog +Summary: uWSGI - rsyslog logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 +Provides: %{name}-plugin-rsyslog = %{version}-%{release} + +%description -n %{name}-logger-rsyslog +This package contains the rsyslog logger plugin for uWSGI + %package -n %{name}-logger-socket Summary: uWSGI - logsocket logger plugin Group: System Environment/Daemons @@ -428,6 +437,9 @@ exit 0 %files -n %{name}-logger-redis %{_libdir}/%{name}/redislog_plugin.so +%files -n %{name}-logger-rsyslog +%{_libdir}/%{name}/rsyslog_plugin.so + %files -n %{name}-logger-socket %{_libdir}/%{name}/logsocket_plugin.so From 327a0dce4abb8a38f666dba922a2ab4929ed30a7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 20:41:38 -0700 Subject: [PATCH 092/427] Splitting off -logger-syslog --- fedora.ini | 4 ++-- uwsgi.spec | 14 +++++++++++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/fedora.ini b/fedora.ini index 28cf0c2..500b46f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, ping, syslog -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, http, ping +plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index de87d5a..88c1da5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,7 +35,6 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel Obsoletes: %{name}-loggers <= 1.9.8-1 -Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 Obsoletes: %{name}-plugin-admin <= 2.0.6 @@ -144,6 +143,16 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-socket This package contains the logsocket logger plugin for uWSGI +%package -n %{name}-logger-syslog +Summary: uWSGI - syslog logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 +Provides: %{name}-plugin-syslog = %{version}-%{release} + +%description -n %{name}-logger-syslog +This package contains the syslog logger plugin for uWSGI + %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -443,6 +452,9 @@ exit 0 %files -n %{name}-logger-socket %{_libdir}/%{name}/logsocket_plugin.so +%files -n %{name}-logger-syslog +%{_libdir}/%{name}/syslog_plugin.so + %files -n %{name}-logger-systemd %{_libdir}/%{name}/systemd_logger_plugin.so From c4714c6fa89b95d10a09a616e8eda9fc8e0d8dc3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 21:02:14 -0700 Subject: [PATCH 093/427] Splitting off some non-essential embedded plugins: Such as -plugin-cache, -plugin-rpc and -plugin-ugreen --- fedora.ini | 4 ++-- uwsgi.spec | 37 ++++++++++++++++++++++++++++++++++--- 2 files changed, 36 insertions(+), 5 deletions(-) diff --git a/fedora.ini b/fedora.ini index 500b46f..2d192ce 100644 --- a/fedora.ini +++ b/fedora.ini @@ -8,5 +8,5 @@ pcre = auto routing = auto ssl = auto malloc_implementation = libc -embedded_plugins = corerouter, echo, http, ping -plugins = cache, carbon, cgi, fastrouter, greenlet, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +embedded_plugins = corerouter, echo, ping +plugins = cache, carbon, cgi, fastrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 88c1da5..1d05923 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -171,6 +171,14 @@ This package contains the ZeroMQ logger plugin for uWSGI # Plugins +%package -n %{name}-plugin-cache +Summary: uWSGI - Plugin for cache support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-cache +This package contains the cache plugin for uWSGI + %package -n %{name}-plugin-carbon Summary: uWSGI - Plugin for Carbon/Graphite support Group: System Environment/Daemons @@ -259,6 +267,14 @@ Requires: rubygem-rack, %{name}-plugin-common %description -n %{name}-plugin-rack This package contains the rack plugin for uWSGI +%package -n %{name}-plugin-rpc +Summary: uWSGI - Plugin for RPC support +Group: System Environment/Daemons +Requires: rrdtool, %{name}-plugin-common + +%description -n %{name}-plugin-rpc +This package contains the RPC plugin for uWSGI + %package -n %{name}-plugin-rrdtool Summary: uWSGI - Plugin for RRDTool support Group: System Environment/Daemons @@ -275,6 +291,14 @@ Requires: ruby, %{name}-plugin-common %description -n %{name}-plugin-ruby This package contains the Ruby 1.9 plugin for uWSGI +%package -n %{name}-plugin-ugreen +Summary: uWSGI - Plugin for uGreen support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-ugreen +This package contains the uGreen plugin for uWSGI + %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons @@ -424,10 +448,8 @@ exit 0 %files -n %{name}-plugin-common %dir %{_libdir}/%{name} -%{_libdir}/%{name}/cache_plugin.so +%{_libdir}/%{name}/http_plugin.so %{_libdir}/%{name}/cgi_plugin.so -%{_libdir}/%{name}/rpc_plugin.so -%{_libdir}/%{name}/ugreen_plugin.so # Loggers @@ -463,6 +485,9 @@ exit 0 # Plugins +%files -n %{name}-plugin-cache +%{_libdir}/%{name}/cache_plugin.so + %files -n %{name}-plugin-carbon %{_libdir}/%{name}/carbon_plugin.so @@ -500,9 +525,15 @@ exit 0 %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so +%files -n %{name}-plugin-rpc +%{_libdir}/%{name}/rpc_plugin.so + %files -n %{name}-plugin-ruby %{_libdir}/%{name}/ruby19_plugin.so +%files -n %{name}-plugin-ugreen +%{_libdir}/%{name}/ugreen_plugin.so + %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so From 63f114056cfae5df3bc9781598bd233ae3c00a95 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 21:12:01 -0700 Subject: [PATCH 094/427] Splitting off the documentation to its subpackage --- uwsgi.spec | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1d05923..0932e0c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -66,6 +66,14 @@ Requires: %{name} This package contains the development header files and libraries for uWSGI extensions +%description -n %{name}-docs +This package contains the documentation files for uWSGI + +%package -n %{name}-docs +Summary: uWSGI - Documentation +Group: Documentation +Requires: %{name} + %package -n %{name}-plugin-common Summary: uWSGI - Common plugins for uWSGI Group: System Environment/Daemons @@ -441,11 +449,14 @@ exit 0 %{_unitdir}/%{name}.service %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} -%doc LICENSE README README.Fedora CHANGELOG docs +%doc LICENSE README README.Fedora CHANGELOG %files -n %{name}-devel %{_includedir}/%{name} +%files -n %{name}-docs +%doc docs + %files -n %{name}-plugin-common %dir %{_libdir}/%{name} %{_libdir}/%{name}/http_plugin.so From 19448ac70230c17f8b78e23a8df96bf4728dedc0 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 21:13:20 -0700 Subject: [PATCH 095/427] oops wrong order --- uwsgi.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0932e0c..a6af8da 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -66,14 +66,14 @@ Requires: %{name} This package contains the development header files and libraries for uWSGI extensions -%description -n %{name}-docs -This package contains the documentation files for uWSGI - %package -n %{name}-docs Summary: uWSGI - Documentation Group: Documentation Requires: %{name} +%description -n %{name}-docs +This package contains the documentation files for uWSGI + %package -n %{name}-plugin-common Summary: uWSGI - Common plugins for uWSGI Group: System Environment/Daemons From 1e02de41364b9b381efb4cd020fab2b933948dad Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 21:27:24 -0700 Subject: [PATCH 096/427] Redacted README better, I think --- README.Fedora | 3 ++- uwsgi.spec | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/README.Fedora b/README.Fedora index b39e7fa..0525d14 100644 --- a/README.Fedora +++ b/README.Fedora @@ -1,2 +1,3 @@ -A copy of the documentation is included under the docs/ +A copy of the documentation can be obtained by installing the ``uwsgi-docs`` +package. The documentation is a copy as of the git SHA: diff --git a/uwsgi.spec b/uwsgi.spec index a6af8da..855af84 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -392,7 +392,7 @@ mkdir -p %{buildroot}%{_httpd_moddir} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG -echo "directory at commit %{commit}, i.e. this:" >> README.Fedora +echo "%{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} From 911045d2214a253e6df2b0d04ca071bc3f039422 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 28 Aug 2014 21:31:50 -0700 Subject: [PATCH 097/427] Renaming -plugin-rawrouter to -router-raw --- uwsgi.spec | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 855af84..bc5705e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -333,22 +333,24 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-sslrouter This package contains the SSL router plugin for uWSGI -%package -n %{name}-plugin-rawrouter -Summary: uWSGI - Raw Router plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common +%package -n %{name}-router-raw +Summary: uWSGI - Raw Router plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-plugin-rawrouter <= 2.0.6 +Provides: %{name}-plugin-rawrouter = %{version}-%{release} -%description -n %{name}-plugin-rawrouter +%description -n %{name}-router-raw This package contains the Raw router plugin for uWSGI -%package -n %{name}-router-fastrouter +%package -n %{name}-router-fast Summary: uWSGI - Plugin for FastRouter support Group: System Environment/Daemons Requires: %{name}-plugin-common Obsoletes: %{name}-plugin-fastrouter <= 2.0.6 Provides: %{name}-plugin-fastrouter = %{version}-%{release} -%description -n %{name}-router-fastrouter +%description -n %{name}-router-fast This package contains the fastrouter (proxy) plugin for uWSGI # The rest @@ -553,9 +555,12 @@ exit 0 %files -n %{name}-routers %{_libdir}/%{name}/router_*_plugin.so -%files -n %{name}-router-fastrouter +%files -n %{name}-router-fast %{_libdir}/%{name}/fastrouter_plugin.so +%files -n %{name}-router-raw +%{_libdir}/%{name}/rawrouter_plugin.so + %files -n %{name}-plugin-sslrouter %{_libdir}/%{name}/sslrouter_plugin.so From 579508b70c9c4c67fcff5dd4b7210eeab85c890d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 13:06:11 -0700 Subject: [PATCH 098/427] Renaming -plugin-sslrouter to -router-ssl --- uwsgi.spec | 46 +++++++++++++++++++--------------------------- 1 file changed, 19 insertions(+), 27 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index bc5705e..d8d7bb1 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,6 +35,7 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel Obsoletes: %{name}-loggers <= 1.9.8-1 +Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 Obsoletes: %{name}-plugin-admin <= 2.0.6 @@ -317,21 +318,16 @@ This package contains the zergpool plugin for uWSGI # Routers -%package -n %{name}-routers -Summary: uWSGI - Router plugins -Group: System Environment/Daemons -Requires: %{name}-plugin-common +%package -n %{name}-router-fast +Summary: uWSGI - Plugin for FastRouter support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Obsoletes: %{name}-plugin-fastrouter <= 2.0.6 +Provides: %{name}-plugin-fastrouter = %{version}-%{release} +Provides: %{name}-routers = %{version}-%{release} -%description -n %{name}-routers -This package contains the router plugins for uWSGI - -%package -n %{name}-plugin-sslrouter -Summary: uWSGI - SSL Router plugin -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-sslrouter -This package contains the SSL router plugin for uWSGI +%description -n %{name}-router-fast +This package contains the fastrouter (proxy) plugin for uWSGI %package -n %{name}-router-raw Summary: uWSGI - Raw Router plugin @@ -339,19 +335,21 @@ Group: System Environment/Daemons Requires: %{name}-plugin-common Obsoletes: %{name}-plugin-rawrouter <= 2.0.6 Provides: %{name}-plugin-rawrouter = %{version}-%{release} +Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-raw This package contains the Raw router plugin for uWSGI -%package -n %{name}-router-fast -Summary: uWSGI - Plugin for FastRouter support +%package -n %{name}-router-ssl +Summary: uWSGI - SSL Router plugin Group: System Environment/Daemons Requires: %{name}-plugin-common -Obsoletes: %{name}-plugin-fastrouter <= 2.0.6 -Provides: %{name}-plugin-fastrouter = %{version}-%{release} +Obsoletes: %{name}-plugin-sslrouter <= 2.0.6 +Provides: %{name}-plugin-sslrouter = %{version}-%{release} +Provides: %{name}-routers = %{version}-%{release} -%description -n %{name}-router-fast -This package contains the fastrouter (proxy) plugin for uWSGI +%description -n %{name}-router-ssl +This package contains the SSL router plugin for uWSGI # The rest @@ -552,21 +550,15 @@ exit 0 # Routers -%files -n %{name}-routers -%{_libdir}/%{name}/router_*_plugin.so - %files -n %{name}-router-fast %{_libdir}/%{name}/fastrouter_plugin.so %files -n %{name}-router-raw %{_libdir}/%{name}/rawrouter_plugin.so -%files -n %{name}-plugin-sslrouter +%files -n %{name}-router-ssl %{_libdir}/%{name}/sslrouter_plugin.so -%files -n %{name}-plugin-rawrouter -%{_libdir}/%{name}/rawrouter_plugin.so - # The rest %files -n mod_proxy_%{name} From b07b2c3269e7919e92cce258e8e1f4a0cdfd4f37 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 15:24:29 -0700 Subject: [PATCH 099/427] Broke up -routers into its individual -router-* --- fedora.ini | 2 +- uwsgi.spec | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 203 insertions(+), 3 deletions(-) diff --git a/fedora.ini b/fedora.ini index 2d192ce..bee293a 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = cache, carbon, cgi, fastrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index d8d7bb1..1ff10ec 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -318,6 +318,42 @@ This package contains the zergpool plugin for uWSGI # Routers +%package -n %{name}-router-access +Summary: uWSGI - Plugin for router_access router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-access +This package contains the router_access plugin for uWSGI + +%package -n %{name}-router-basicauth +Summary: uWSGI - Plugin for Basic Auth router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-basicauth +This package contains the basicauth plugin for uWSGI + +%package -n %{name}-router-cache +Summary: uWSGI - Plugin for Cache router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-cache +This package contains the cache router plugin for uWSGI + +%package -n %{name}-router-expires +Summary: uWSGI - Plugin for Expires router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-expires +This package contains the expires router plugin for uWSGI + %package -n %{name}-router-fast Summary: uWSGI - Plugin for FastRouter support Group: System Environment/Daemons @@ -329,8 +365,59 @@ Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-fast This package contains the fastrouter (proxy) plugin for uWSGI +%package -n %{name}-router-forkpty +Summary: uWSGI - Plugin for ForkPTY router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-router-forkpty +This package contains the ForkPTY router plugin for uWSGI + +%package -n %{name}-router-hash +Summary: uWSGI - Plugin for Hash router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-hash +This package contains the hash router plugin for uWSGI + +%package -n %{name}-router-http +Summary: uWSGI - Plugin for HTTP router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-http +This package contains the http router plugin for uWSGI + +%package -n %{name}-router-memcached +Summary: uWSGI - Plugin for Memcached router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-memcached +This package contains the memcached router plugin for uWSGI + +%package -n %{name}-router-metrics +Summary: uWSGI - Plugin for Metrics router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-router-metrics +This package contains the metrics router plugin for uWSGI + +%package -n %{name}-router-radius +Summary: uWSGI - Plugin for Radius router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-router-radius +This package contains the metrics router plugin for uWSGI + %package -n %{name}-router-raw -Summary: uWSGI - Raw Router plugin +Summary: uWSGI - Plugin for Raw Router support Group: System Environment/Daemons Requires: %{name}-plugin-common Obsoletes: %{name}-plugin-rawrouter <= 2.0.6 @@ -340,8 +427,43 @@ Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-raw This package contains the Raw router plugin for uWSGI +%package -n %{name}-router-redirect +Summary: uWSGI - Plugin for Redirect router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-redirect +This package contains the redirect router plugin for uWSGI + +%package -n %{name}-router-redis +Summary: uWSGI - Plugin for Redis router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-redis +This package contains the redis router plugin for uWSGI + +%package -n %{name}-router-rewrite +Summary: uWSGI - Plugin for Rewrite router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-rewrite +This package contains the rewrite router plugin for uWSGI + +%package -n %{name}-router-spnego +Summary: uWSGI - Plugin for SPNEgo router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-router-spnego +This package contains the spnego router plugin for uWSGI + %package -n %{name}-router-ssl -Summary: uWSGI - SSL Router plugin +Summary: uWSGI - Plugin for SSL router support Group: System Environment/Daemons Requires: %{name}-plugin-common Obsoletes: %{name}-plugin-sslrouter <= 2.0.6 @@ -351,6 +473,33 @@ Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-ssl This package contains the SSL router plugin for uWSGI +%package -n %{name}-router-static +Summary: uWSGI - Plugin for Static router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-static +This package contains the Static router plugin for uWSGI + +%package -n %{name}-router-uwsgi +Summary: uWSGI - Plugin for uWSGI router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-uwsgi +This package contains the uwsgi router plugin for uWSGI + +%package -n %{name}-router-xmldir +Summary: uWSGI - Plugin for XMLDir router rupport +Group: System Environment/Daemons +Requires: %{name}-plugin-common +Provides: %{name}-routers = %{version}-%{release} + +%description -n %{name}-router-xmldir +This package contains the xmldir router plugin for uWSGI + # The rest %package -n mod_proxy_%{name} @@ -550,15 +699,66 @@ exit 0 # Routers +%files -n %{name}-router-access +%{_libdir}/%{name}/router_access_plugin.so + +%files -n %{name}-router-basicauth +%{_libdir}/%{name}/router_basicauth_plugin.so + +%files -n %{name}-router-cache +%{_libdir}/%{name}/router_cache_plugin.so + +%files -n %{name}-router-expires +%{_libdir}/%{name}/router_expires_plugin.so + %files -n %{name}-router-fast %{_libdir}/%{name}/fastrouter_plugin.so +%files -n %{name}-router-forkpty +%{_libdir}/%{name}/forkptyrouter_plugin.so + +%files -n %{name}-router-hash +%{_libdir}/%{name}/router_hash_plugin.so + +%files -n %{name}-router-http +%{_libdir}/%{name}/router_http_plugin.so + +%files -n %{name}-router-memcached +%{_libdir}/%{name}/router_memcached_plugin.so + +%files -n %{name}-router-metrics +%{_libdir}/%{name}/router_metrics_plugin.so + +%files -n %{name}-router-radius +%{_libdir}/%{name}/router_radius_plugin.so + %files -n %{name}-router-raw %{_libdir}/%{name}/rawrouter_plugin.so +%files -n %{name}-router-redirect +%{_libdir}/%{name}/router_redirect_plugin.so + +%files -n %{name}-router-redis +%{_libdir}/%{name}/router_redis_plugin.so + +%files -n %{name}-router-rewrite +%{_libdir}/%{name}/router_rewrite_plugin.so + +%files -n %{name}-router-spnego +%{_libdir}/%{name}/router_spnego_plugin.so + %files -n %{name}-router-ssl %{_libdir}/%{name}/sslrouter_plugin.so +%files -n %{name}-router-static +%{_libdir}/%{name}/router_static_plugin.so + +%files -n %{name}-router-uwsgi +%{_libdir}/%{name}/router_uwsgi_plugin.so + +%files -n %{name}-router-xmldir +%{_libdir}/%{name}/router_xmldir_plugin.so + # The rest %files -n mod_proxy_%{name} From 7d205ee2a28f43eff5a2d04053f557a655a34887 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 15:37:46 -0700 Subject: [PATCH 100/427] Packaging -plugin-airbrake --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index bee293a..9436e2c 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = airbrake, cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 1ff10ec..c0d8a83 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -33,7 +33,7 @@ BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-deve BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel -BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel +BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -180,6 +180,14 @@ This package contains the ZeroMQ logger plugin for uWSGI # Plugins +%package -n %{name}-plugin-airbrake +Summary: uWSGI - Plugin for AirBrake support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libcurl + +%description -n %{name}-plugin-airbrake +This package contains the airbrake plugin for uWSGI + %package -n %{name}-plugin-cache Summary: uWSGI - Plugin for cache support Group: System Environment/Daemons @@ -645,6 +653,9 @@ exit 0 # Plugins +%files -n %{name}-plugin-airbrake +%{_libdir}/%{name}/airbrake_plugin.so + %files -n %{name}-plugin-cache %{_libdir}/%{name}/cache_plugin.so From 2c45522e89bc2918e7faab28411344e8747def82 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:28:56 -0700 Subject: [PATCH 101/427] Adding -alarm-curl --- fedora.ini | 2 +- uwsgi.spec | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 9436e2c..d743843 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = airbrake, cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, airbrake, cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index c0d8a83..eeb7d1b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -84,6 +84,15 @@ Requires: %{name} This package contains the most common plugins used with uWSGI. The plugins included in this package are: cache, CGI, RPC, uGreen +# Alarms +%package -n %{name}-alarm-curl +Summary: uWSGI - Curl alarm plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libcurl + +%description -n %{name}-alarm-curl +This package contains the alarm_curl alarm plugin for uWSGI + # Loggers %package -n %{name}-logger-crypto @@ -619,6 +628,11 @@ exit 0 %{_libdir}/%{name}/http_plugin.so %{_libdir}/%{name}/cgi_plugin.so +# Alarms + +%files -n %{name}-alarm-curl +%{_libdir}/%{name}/alarm_curl_plugin.so + # Loggers %files -n %{name}-logger-crypto From 8559a2dd86c1aad440c7a16b2af084d274bd6148 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:31:53 -0700 Subject: [PATCH 102/427] Adding -alarm-xmpp --- uwsgi.spec | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index eeb7d1b..0bffe0b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -85,14 +85,24 @@ This package contains the most common plugins used with uWSGI. The plugins included in this package are: cache, CGI, RPC, uGreen # Alarms + %package -n %{name}-alarm-curl Summary: uWSGI - Curl alarm plugin Group: System Environment/Daemons Requires: %{name}-plugin-common, libcurl + %description -n %{name}-alarm-curl This package contains the alarm_curl alarm plugin for uWSGI +%package -n %{name}-alarm-xmpp +Summary: uWSGI - Curl alarm plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, gloox + +%description -n %{name}-alarm-xmpp +This package contains the alarm_xmpp alarm plugin for uWSGI + # Loggers %package -n %{name}-logger-crypto @@ -633,6 +643,9 @@ exit 0 %files -n %{name}-alarm-curl %{_libdir}/%{name}/alarm_curl_plugin.so +%files -n %{name}-alarm-xmpp +%{_libdir}/%{name}/alarm_xmpp_plugin.so + # Loggers %files -n %{name}-logger-crypto From a897e3a105b973f3317a7a39c8ddc2be90801fbe Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:35:56 -0700 Subject: [PATCH 103/427] Actually build the -alarm-xmpp plugin, duh --- fedora.ini | 2 +- uwsgi.spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index d743843..2d1645c 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, airbrake, cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 0bffe0b..8e45a2b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -34,6 +34,7 @@ BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel +BuildRequires: gloox-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 From 47b9711ade7f5e2a381fd74f0af2d3721f43ca98 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:44:26 -0700 Subject: [PATCH 104/427] Adding -plugin-coroae --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 2d1645c..b6f826f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 8e45a2b..bb9bc08 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -224,6 +224,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-carbon This package contains the Carbon plugin for uWSGI (to use in graphite) +%package -n %{name}-plugin-coroae +Summary: uWSGI - Plugin for PERL Coro support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, perl-Coro + +%description -n %{name}-plugin-carbon +This package contains the coroae plugin for uWSGI (to use in graphite) + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -690,6 +698,9 @@ exit 0 %files -n %{name}-plugin-carbon %{_libdir}/%{name}/carbon_plugin.so +%files -n %{name}-plugin-coroae +%{_libdir}/%{name}/coroae_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 4130a4ebbeed6a151268a4f2d7fb5bc2f46d0aed Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:45:10 -0700 Subject: [PATCH 105/427] Missed description --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index bb9bc08..196ffc6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -229,7 +229,7 @@ Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons Requires: %{name}-plugin-common, perl-Coro -%description -n %{name}-plugin-carbon +%description -n %{name}-plugin-coroae This package contains the coroae plugin for uWSGI (to use in graphite) %package -n %{name}-plugin-greenlet From 2e63ddad940bcb6f1fcd5fa8b38bc4ef237a7745 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:51:31 -0700 Subject: [PATCH 106/427] Seems like we need perl-Coro at buildtime too --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 196ffc6..7d6c942 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -34,7 +34,7 @@ BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel -BuildRequires: gloox-devel +BuildRequires: gloox-devel, perl-Coro Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -227,7 +227,7 @@ This package contains the Carbon plugin for uWSGI (to use in graphite) %package -n %{name}-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons -Requires: %{name}-plugin-common, perl-Coro +Requires: %{name}-plugin-common, %{name}-plugin-psgi, perl-Coro %description -n %{name}-plugin-coroae This package contains the coroae plugin for uWSGI (to use in graphite) From f1770d8144d2c85900ee2120cd1b3a5ba0a41efe Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 16:57:37 -0700 Subject: [PATCH 107/427] Adding -plugin-cplusplus --- fedora.ini | 2 +- uwsgi.spec | 15 +++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/fedora.ini b/fedora.ini index b6f826f..4d6ce7f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 7d6c942..f4cdca4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -34,7 +34,7 @@ BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel -BuildRequires: gloox-devel, perl-Coro +BuildRequires: gloox-devel, perl-Coro, libstdc++-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -230,7 +230,15 @@ Group: System Environment/Daemons Requires: %{name}-plugin-common, %{name}-plugin-psgi, perl-Coro %description -n %{name}-plugin-coroae -This package contains the coroae plugin for uWSGI (to use in graphite) +This package contains the coroae plugin for uWSGI + +%package -n %{name}-plugin-cplusplus +Summary: uWSGI - Plugin for C++ support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libstdc++ + +%description -n %{name}-plugin-cplusplus +This package contains the cplusplus plugin for uWSGI %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support @@ -701,6 +709,9 @@ exit 0 %files -n %{name}-plugin-coroae %{_libdir}/%{name}/coroae_plugin.so +%files -n %{name}-plugin-cplusplus +%{_libdir}/%{name}/cplusplus_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 237f9983c3dac22c826b61e141d0447b7c0a73b6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:04:37 -0700 Subject: [PATCH 108/427] Adding -plugin-curl-cron --- uwsgi.spec | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index f4cdca4..9114976 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -240,6 +240,14 @@ Requires: %{name}-plugin-common, libstdc++ %description -n %{name}-plugin-cplusplus This package contains the cplusplus plugin for uWSGI +%package -n %{name}-plugin-curl-cron +Summary: uWSGI - Plugin for CURL Cron support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libcurl + +%description -n %{name}-plugin-curl-cron +This package contains the curl_cron plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -712,6 +720,9 @@ exit 0 %files -n %{name}-plugin-cplusplus %{_libdir}/%{name}/cplusplus_plugin.so +%files -n %{name}-plugin-curl-cron +%{_libdir}/%{name}/curl_cron_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 472e5885620703535e272910087c71f20c0ce30b Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:08:34 -0700 Subject: [PATCH 109/427] I am starting to forget things it seems --- fedora.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 4d6ce7f..5afdbc9 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool From f1c00c06d87fcd3722bd5e171cc63b26ab59fc7f Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:13:42 -0700 Subject: [PATCH 110/427] Adding -plugin-dumbloop --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 5afdbc9..b2524de 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 9114976..a992654 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -248,6 +248,14 @@ Requires: %{name}-plugin-common, libcurl %description -n %{name}-plugin-curl-cron This package contains the curl_cron plugin for uWSGI +%package -n %{name}-plugin-dumbloop +Summary: uWSGI - Plugin for Dumb Loop support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-dumbloop +This package contains the dumbloop plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -723,6 +731,9 @@ exit 0 %files -n %{name}-plugin-curl-cron %{_libdir}/%{name}/curl_cron_plugin.so +%files -n %{name}-plugin-dumbloop +%{_libdir}/%{name}/dumbloop_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 4e3fad0ee288ccc495d4a7c1f6d667fabce0c2f0 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:23:41 -0700 Subject: [PATCH 111/427] Adding -plugin-fiber --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index b2524de..187f367 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index a992654..98755f9 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -256,6 +256,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-dumbloop This package contains the dumbloop plugin for uWSGI +%package -n %{name}-plugin-fiber +Summary: uWSGI - Plugin for Ruby Fiber support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-rack + +%description -n %{name}-plugin-fiber +This package contains the fiber plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -734,6 +742,9 @@ exit 0 %files -n %{name}-plugin-dumbloop %{_libdir}/%{name}/dumbloop_plugin.so +%files -n %{name}-plugin-fiber +%{_libdir}/%{name}/fiber_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From daba09036981648935c31c7ca1e4d20187c2717d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:31:45 -0700 Subject: [PATCH 112/427] Adding -plugin-gccgo --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 187f367..82f58c2 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 98755f9..51c1d80 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -34,7 +34,7 @@ BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel -BuildRequires: gloox-devel, perl-Coro, libstdc++-devel +BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -264,6 +264,14 @@ Requires: %{name}-plugin-common, %{name}-plugin-rack %description -n %{name}-plugin-fiber This package contains the fiber plugin for uWSGI +%package -n %{name}-plugin-gccgo +Summary: uWSGI - Plugin for GoLang support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libgo + +%description -n %{name}-plugin-gccgo +This package contains the gccgo plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -745,6 +753,9 @@ exit 0 %files -n %{name}-plugin-fiber %{_libdir}/%{name}/fiber_plugin.so +%files -n %{name}-plugin-gccgo +%{_libdir}/%{name}/gccgo_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From a5e0dad3506ffe051ec89d317cb8bcfca01ba38e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:52:50 -0700 Subject: [PATCH 113/427] Adding missing lib for -plugin-gccgo --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 51c1d80..77bdd0b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -34,7 +34,7 @@ BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel -BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel +BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 From 1d736330b302838ed0af4251473f2c1f65f095e3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 17:55:48 -0700 Subject: [PATCH 114/427] Adding -plugin-geoip --- fedora.ini | 2 +- uwsgi.spec | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 82f58c2..8d03edf 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 77bdd0b..67ad647 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,6 +35,7 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go +BuildRequires: GeoIP-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -272,6 +273,14 @@ Requires: %{name}-plugin-common, libgo %description -n %{name}-plugin-gccgo This package contains the gccgo plugin for uWSGI +%package -n %{name}-plugin-geoip +Summary: uWSGI - Plugin for GeoIP support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, GeoIP + +%description -n %{name}-plugin-geoip +This package contains the geoip plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -756,6 +765,9 @@ exit 0 %files -n %{name}-plugin-gccgo %{_libdir}/%{name}/gccgo_plugin.so +%files -n %{name}-plugin-geoip +%{_libdir}/%{name}/geoip_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 08ff6296845056185b8624528cf54fed57478fc3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:05:45 -0700 Subject: [PATCH 115/427] Adding -plugin-gevent --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 8d03edf..412abbc 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 67ad647..e9fb302 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,7 +35,7 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go -BuildRequires: GeoIP-devel +BuildRequires: GeoIP-devel, libevent-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -281,6 +281,14 @@ Requires: %{name}-plugin-common, GeoIP %description -n %{name}-plugin-geoip This package contains the geoip plugin for uWSGI +%package -n %{name}-plugin-gevent +Summary: uWSGI - Plugin for GEvent support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libevent + +%description -n %{name}-plugin-gevent +This package contains the gevent plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -768,6 +776,9 @@ exit 0 %files -n %{name}-plugin-geoip %{_libdir}/%{name}/geoip_plugin.so +%files -n %{name}-plugin-gevent +%{_libdir}/%{name}/gevent_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 8c68c2f827dd4f2b6c6fe46e4e321adad2b0c0c9 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:15:53 -0700 Subject: [PATCH 116/427] Adding -plugin-glusterfs --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 412abbc..d36b63b 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index e9fb302..afaf1d4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,7 +35,7 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go -BuildRequires: GeoIP-devel, libevent-devel +BuildRequires: GeoIP-devel, libevent-devel, glusterfs-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -289,6 +289,14 @@ Requires: %{name}-plugin-common, libevent %description -n %{name}-plugin-gevent This package contains the gevent plugin for uWSGI +%package -n %{name}-plugin-glusterfs +Summary: uWSGI - Plugin for GlusterFS support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, glusterfs-api + +%description -n %{name}-plugin-glusterfs +This package contains the glusterfs plugin for uWSGI + %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -779,6 +787,9 @@ exit 0 %files -n %{name}-plugin-gevent %{_libdir}/%{name}/gevent_plugin.so +%files -n %{name}-plugin-glusterfs +%{_libdir}/%{name}/glusterfs_plugin.so + %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so From 7cc9a90aff5c0b41bed6b942255345020a41062e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:21:52 -0700 Subject: [PATCH 117/427] This is the correct -devel dependency --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index afaf1d4..9a7637e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,7 +35,7 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go -BuildRequires: GeoIP-devel, libevent-devel, glusterfs-devel +BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 From a61617b70231972e0dc700c260fc941ab384f8cd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:27:55 -0700 Subject: [PATCH 118/427] Adding -logger-graylog2 --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index d36b63b..feaab33 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 9a7637e..eec2802 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -35,7 +35,7 @@ BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go -BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel +BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -125,6 +125,14 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-file This package contains the logfile logger plugin for uWSGI +%package -n %{name}-logger-graylog2 +Summary: uWSGI - Graylog2 logger plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, zlib + +%description -n %{name}-logger-graylog2 +This package contains the graylog2 logger plugin for uWSGI + %package -n %{name}-logger-mongodb Summary: uWSGI - mongodblog logger plugin Group: System Environment/Daemons @@ -728,6 +736,9 @@ exit 0 %files -n %{name}-logger-file %{_libdir}/%{name}/logfile_plugin.so +%files -n %{name}-logger-graylog2 +%{_libdir}/%{name}/graylog2_plugin.so + %files -n %{name}-logger-mongodb %{_libdir}/%{name}/mongodblog_plugin.so From 32a5119fe284d1765506cf9df12c2a7459e9c7cc Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:36:48 -0700 Subject: [PATCH 119/427] Adding -plugin-gridfs --- fedora.ini | 2 +- uwsgi.spec | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index feaab33..b649910 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index eec2802..9605fd7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -36,6 +36,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel +BuildRequires: libmongo-client-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -313,6 +314,14 @@ Requires: python-greenlet, %{name}-plugin-common %description -n %{name}-plugin-greenlet This package contains the python greenlet plugin for uWSGI +%package -n %{name}-plugin-gridfs +Summary: uWSGI - Plugin for GridFS support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libmongo-client + +%description -n %{name}-plugin-gridfs +This package contains the gridfs plugin for uWSGI + %package -n %{name}-plugin-jvm Summary: uWSGI - Plugin for JVM support Group: System Environment/Daemons @@ -804,6 +813,9 @@ exit 0 %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so +%files -n %{name}-plugin-gridfs +%{_libdir}/%{name}/gridfs_plugin.so + %files -n %{name}-plugin-jvm %{_libdir}/%{name}/jvm_plugin.so %{_javadir}/uwsgi.jar From 958dc88b80d3ab0c50cdbc8c7e06b209fa97381c Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:47:15 -0700 Subject: [PATCH 120/427] Right dependencies for -plugin-gridfs --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9605fd7..e478f34 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -36,7 +36,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel -BuildRequires: libmongo-client-devel +BuildRequires: libmongo-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -317,7 +317,7 @@ This package contains the python greenlet plugin for uWSGI %package -n %{name}-plugin-gridfs Summary: uWSGI - Plugin for GridFS support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libmongo-client +Requires: %{name}-plugin-common, libmongodb %description -n %{name}-plugin-gridfs This package contains the gridfs plugin for uWSGI From 32e09df47b5d33f590958917cd85e3076c8af48f Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 20:48:46 -0700 Subject: [PATCH 121/427] Sigh I am sleepy --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e478f34..14cdce0 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -36,7 +36,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel -BuildRequires: libmongo-devel +BuildRequires: libmongodb-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 From 3e8ad22a6464ae2e9c817f0f7b442fbc5e2c45dd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 29 Aug 2014 21:12:39 -0700 Subject: [PATCH 122/427] Adding -plugin-mongrel2 --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index b649910..e50b637 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 14cdce0..c6461b3 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -338,6 +338,14 @@ Requires: lua, %{name}-plugin-common %description -n %{name}-plugin-lua This package contains the lua plugin for uWSGI +%package -n %{name}-plugin-mongrel2 +Summary: uWSGI - Plugin for Mongrel2 support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, zeromq + +%description -n %{name}-plugin-mongrel2 +This package contains the mongrel2 plugin for uWSGI + %package -n %{name}-plugin-nagios Summary: uWSGI - Plugin for Nagios support Group: System Environment/Daemons @@ -823,6 +831,9 @@ exit 0 %files -n %{name}-plugin-lua %{_libdir}/%{name}/lua_plugin.so +%files -n %{name}-plugin-mongrel2 +%{_libdir}/%{name}/mongrel2_plugin.so + %files -n %{name}-plugin-nagios %{_libdir}/%{name}/nagios_plugin.so From 050fbd029d7a2d161ba2cae30c9aebe07123fdff Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Sep 2014 09:45:39 -0700 Subject: [PATCH 123/427] Adding -plugin-mono --- fedora.ini | 2 +- uwsgi.spec | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index e50b637..14afcaa 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index c6461b3..5e39a60 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -36,7 +36,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel -BuildRequires: libmongodb-devel +BuildRequires: libmongodb-devel, mono-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -346,6 +346,14 @@ Requires: %{name}-plugin-common, zeromq %description -n %{name}-plugin-mongrel2 This package contains the mongrel2 plugin for uWSGI +%package -n %{name}-plugin-mono +Summary: uWSGI - Plugin for Mono / .NET support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, mono-web + +%description -n %{name}-plugin-mono +This package contains the mono plugin for uWSGI + %package -n %{name}-plugin-nagios Summary: uWSGI - Plugin for Nagios support Group: System Environment/Daemons @@ -664,6 +672,7 @@ mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}%{_httpd_moddir} +mkdir -p %{buildroot}/usr/lib/mono/gac/ mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG @@ -673,6 +682,7 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} +gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service %{__install} -p -m 0755 apache2/.libs/mod_proxy_%{name}.so %{buildroot}%{_httpd_moddir}/mod_proxy_%{name}.so @@ -834,6 +844,13 @@ exit 0 %files -n %{name}-plugin-mongrel2 %{_libdir}/%{name}/mongrel2_plugin.so +%files -n %{name}-plugin-mono +%dir /usr/lib/mono/%{name}/ +%dir /usr/lib/mono/gac/%{name}/ +%{_libdir}/%{name}/mono_plugin.so +/usr/lib/mono/%{name}/*.dll +/usr/lib/mono/gac/%{name}/*/*.dll + %files -n %{name}-plugin-nagios %{_libdir}/%{name}/nagios_plugin.so From 03999d7a7acc8de4109013a1a9367b172788f9d7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Sep 2014 10:16:25 -0700 Subject: [PATCH 124/427] Adding -log-encoder-msgpack --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 14afcaa..419fce7 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 5e39a60..25736a4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -108,6 +108,14 @@ This package contains the alarm_xmpp alarm plugin for uWSGI # Loggers +%package -n %{name}-log-encoder-msgpack +Summary: uWSGI - msgpack log encoder plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-log-encoder-msgpack +This package contains the msgpack log encoder plugin for uWSGI + %package -n %{name}-logger-crypto Summary: uWSGI - logcrypto logger plugin Group: System Environment/Daemons @@ -757,6 +765,9 @@ exit 0 # Loggers +%files -n %{name}-log-encoder-msgpack +%{_libdir}/%{name}/msgpack_plugin.so + %files -n %{name}-logger-crypto %{_libdir}/%{name}/logcrypto_plugin.so From 1069df7537f24d3601564ba600f83c814dff03d0 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Sep 2014 13:09:42 -0700 Subject: [PATCH 125/427] Adding -plugin-pty --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 419fce7..ff6d6eb 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 25736a4..0ff1047 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -394,6 +394,14 @@ Requires: perl-PSGI, %{name}-plugin-common %description -n %{name}-plugin-psgi This package contains the PSGI plugin for uWSGI +%package -n %{name}-plugin-pty +Summary: uWSGI - Plugin for PTY support +Group: System Environment/Daemons +Requires: python, %{name}-plugin-common + +%description -n %{name}-plugin-pty +This package contains the pty plugin for uWSGI + %package -n %{name}-plugin-python Summary: uWSGI - Plugin for Python support Group: System Environment/Daemons @@ -874,6 +882,9 @@ exit 0 %files -n %{name}-plugin-psgi %{_libdir}/%{name}/psgi_plugin.so +%files -n %{name}-plugin-pty +%{_libdir}/%{name}/pty_plugin.so + %files -n %{name}-plugin-python %{_libdir}/%{name}/python_plugin.so From dd8695b1918ab6773f1d5d028689c5a1ef272d41 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Sep 2014 15:40:31 -0700 Subject: [PATCH 126/427] Adding -plugin-rbthreads --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index ff6d6eb..130a9b3 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 0ff1047..4463a65 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -426,6 +426,14 @@ Requires: rubygem-rack, %{name}-plugin-common %description -n %{name}-plugin-rack This package contains the rack plugin for uWSGI +%package -n %{name}-plugin-rbthreads +Summary: uWSGI - Ruby native threads support plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, ruby + +%description -n %{name}-plugin-rbthreads +This package contains the rbthreads plugin for uWSGI + %package -n %{name}-plugin-rpc Summary: uWSGI - Plugin for RPC support Group: System Environment/Daemons @@ -894,6 +902,9 @@ exit 0 %files -n %{name}-plugin-rack %{_libdir}/%{name}/rack_plugin.so +%files -n %{name}-plugin-rbthreads +%{_libdir}/%{name}/rbthreads_plugin.so + %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so From 86e3ed127640737f68c787e5dc585f9aba9a2c2b Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Sep 2014 15:51:33 -0700 Subject: [PATCH 127/427] Adding -plugin-ring --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 130a9b3..af667d2 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 4463a65..1932786 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -434,6 +434,14 @@ Requires: %{name}-plugin-common, ruby %description -n %{name}-plugin-rbthreads This package contains the rbthreads plugin for uWSGI +%package -n %{name}-plugin-ring +Summary: uWSGI - Clojure/Ring request handler support plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-jvm, clojure + +%description -n %{name}-plugin-ring +This package contains the ring plugin for uWSGI + %package -n %{name}-plugin-rpc Summary: uWSGI - Plugin for RPC support Group: System Environment/Daemons @@ -905,6 +913,9 @@ exit 0 %files -n %{name}-plugin-rbthreads %{_libdir}/%{name}/rbthreads_plugin.so +%files -n %{name}-plugin-ring +%{_libdir}/%{name}/ring_plugin.so + %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so From f733bccb247838ce0584a01e8a03b62109e730ba Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 4 Sep 2014 10:42:50 -0700 Subject: [PATCH 128/427] Adding -plugin-jwsgi --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index af667d2..591a8b2 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 1932786..895049d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -338,6 +338,14 @@ Requires: %{name}-plugin-common, java-headless, jpackage-utils %description -n %{name}-plugin-jvm This package contains the JVM plugin for uWSGI +%package -n %{name}-plugin-jwsgi +Summary: uWSGI - Plugin for JWSGI support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-jvm + +%description -n %{name}-plugin-jwsgi +This package contains the jwsgi plugin for uWSGI + %package -n %{name}-plugin-lua Summary: uWSGI - Plugin for LUA support Group: System Environment/Daemons @@ -873,6 +881,9 @@ exit 0 %{_libdir}/%{name}/jvm_plugin.so %{_javadir}/uwsgi.jar +%files -n %{name}-plugin-jwsgi +%{_libdir}/%{name}/jwsgi_plugin.so + %files -n %{name}-plugin-lua %{_libdir}/%{name}/lua_plugin.so From a29b3bed909b930412df38a7e11f87e9503545a5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 5 Sep 2014 09:52:24 -0700 Subject: [PATCH 129/427] Adding -plugin-spooler --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 591a8b2..5d1c51e 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 895049d..fb4047d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -472,7 +472,15 @@ Group: System Environment/Daemons Requires: ruby, %{name}-plugin-common %description -n %{name}-plugin-ruby -This package contains the Ruby 1.9 plugin for uWSGI +This package contains the ruby19 plugin for uWSGI + +%package -n %{name}-plugin-spooler +Summary: uWSGI - Plugin for Remote Spooling support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-spooler +This package contains the spooler plugin for uWSGI %package -n %{name}-plugin-ugreen Summary: uWSGI - Plugin for uGreen support @@ -936,6 +944,9 @@ exit 0 %files -n %{name}-plugin-ruby %{_libdir}/%{name}/ruby19_plugin.so +%files -n %{name}-plugin-spooler +%{_libdir}/%{name}/spooler_plugin.so + %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so From 920424951740efe65c680bfd865dabc194b316d5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 5 Sep 2014 10:08:44 -0700 Subject: [PATCH 130/427] Adding -plugin-sqlite3 --- fedora.ini | 2 +- uwsgi.spec | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 5d1c51e..803c176 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index fb4047d..e74ef6f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -94,7 +94,6 @@ Summary: uWSGI - Curl alarm plugin Group: System Environment/Daemons Requires: %{name}-plugin-common, libcurl - %description -n %{name}-alarm-curl This package contains the alarm_curl alarm plugin for uWSGI @@ -482,6 +481,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-spooler This package contains the spooler plugin for uWSGI +%package -n %{name}-plugin-sqlite3 +Summary: uWSGI - SQLite3 plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, sqlite + +%description -n %{name}-plugin-sqlite3 +This package contains the sqlite3 plugin for uWSGI + %package -n %{name}-plugin-ugreen Summary: uWSGI - Plugin for uGreen support Group: System Environment/Daemons @@ -947,6 +954,9 @@ exit 0 %files -n %{name}-plugin-spooler %{_libdir}/%{name}/spooler_plugin.so +%files -n %{name}-plugin-sqlite3 +%{_libdir}/%{name}/sqlite3_plugin.so + %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so From 16b2f78edd499ac883ee17b85703fab041b753d8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 5 Sep 2014 10:43:23 -0700 Subject: [PATCH 131/427] Adding -plugin-ldap --- fedora.ini | 2 +- uwsgi.spec | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 803c176..c9893b1 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index e74ef6f..b485bb7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -36,7 +36,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel -BuildRequires: libmongodb-devel, mono-devel +BuildRequires: libmongodb-devel, mono-devel, openldap-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -345,6 +345,14 @@ Requires: %{name}-plugin-common, %{name}-plugin-jvm %description -n %{name}-plugin-jwsgi This package contains the jwsgi plugin for uWSGI +%package -n %{name}-plugin-ldap +Summary: uWSGI - Plugin for LDAP support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, openldap + +%description -n %{name}-plugin-ldap +This package contains the ldap plugin for uWSGI + %package -n %{name}-plugin-lua Summary: uWSGI - Plugin for LUA support Group: System Environment/Daemons @@ -899,6 +907,9 @@ exit 0 %files -n %{name}-plugin-jwsgi %{_libdir}/%{name}/jwsgi_plugin.so +%files -n %{name}-plugin-ldap +%{_libdir}/%{name}/ldap_plugin.so + %files -n %{name}-plugin-lua %{_libdir}/%{name}/lua_plugin.so From fe6fb1bbe1c8ead31798edce3ae5741519ce32d3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 5 Sep 2014 14:01:51 -0700 Subject: [PATCH 132/427] Adding -plugin-ssi --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index c9893b1..3b02ff0 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index b485bb7..bb27704 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -497,6 +497,14 @@ Requires: %{name}-plugin-common, sqlite %description -n %{name}-plugin-sqlite3 This package contains the sqlite3 plugin for uWSGI +%package -n %{name}-plugin-ssi +Summary: uWSGI - Server Side Includes plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-ssi +This package contains the ssi plugin for uWSGI + %package -n %{name}-plugin-ugreen Summary: uWSGI - Plugin for uGreen support Group: System Environment/Daemons @@ -968,6 +976,9 @@ exit 0 %files -n %{name}-plugin-sqlite3 %{_libdir}/%{name}/sqlite3_plugin.so +%files -n %{name}-plugin-ssi +%{_libdir}/%{name}/ssi_plugin.so + %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so From 62ebdee334bf2d5617c9c61c333d94ecb2a8e1b5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 5 Sep 2014 19:39:35 -0700 Subject: [PATCH 133/427] Adding all -stats-pusher-* plugins --- fedora.ini | 2 +- uwsgi.spec | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 3b02ff0..8f6e8e4 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index bb27704..136477c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -87,6 +87,36 @@ Requires: %{name} This package contains the most common plugins used with uWSGI. The plugins included in this package are: cache, CGI, RPC, uGreen +# Stats pushers + +%package -n %{name}-stats-pusher-file +Summary: uWSGI - File Stats Pusher for uWSGI +Requires: %{name}-plugins-common + +%description -n %{name}-stats-pusher-file +This package contains the stats_pusher_file plugin for uWSGI + +%package -n %{name}-stats-pusher-mongodb +Summary: uWSGI - MongoDB Stats Pusher for uWSGI +Requires: %{name}-plugins-common + +%description -n %{name}-stats-pusher-mongodb +This package contains the stats_pusher_mongodb plugin for uWSGI + +%package -n %{name}-stats-pusher-socket +Summary: uWSGI - Socket Stats Pusher for uWSGI +Requires: %{name}-plugins-common + +%description -n %{name}-stats-pusher-socket +This package contains the stats_pusher_socket plugin for uWSGI + +%package -n %{name}-stats-pusher-statsd +Summary: uWSGI - StatsD Stats Pusher for uWSGI +Requires: %{name}-plugins-common + +%description -n %{name}-stats-pusher-statsd +This package contains the stats_pusher_statsd plugin for uWSGI + # Alarms %package -n %{name}-alarm-curl @@ -818,6 +848,20 @@ exit 0 %{_libdir}/%{name}/http_plugin.so %{_libdir}/%{name}/cgi_plugin.so +# Stats pushers + +%files -n %{name}-stats-pusher-file +%{_libdir}/%{name}/stats_pusher_file_plugin.so + +%files -n %{name}-stats-pusher-mongodb +%{_libdir}/%{name}/stats_pusher_mongodb_plugin.so + +%files -n %{name}-stats-pusher-socket +%{_libdir}/%{name}/stats_pusher_socket_plugin.so + +%files -n %{name}-stats-pusher-statsd +%{_libdir}/%{name}/stats_pusher_statsd_plugin.so + # Alarms %files -n %{name}-alarm-curl From 16c6bbb297335189dd079892f356d399cbaab5d7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 5 Sep 2014 19:53:12 -0700 Subject: [PATCH 134/427] Adding -plugin-tornado and -plugin-tornado3 The latter is the python3 version --- fedora.ini | 2 +- uwsgi.spec | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 8f6e8e4..a4f44bc 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 136477c..23134b7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -543,6 +543,22 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-ugreen This package contains the uGreen plugin for uWSGI +%package -n %{name}-plugin-tornado +Summary: uWSGI - Plugin for Tornado support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, python-tornado + +%description -n %{name}-plugin-tornado +This package contains the tornado plugin for uWSGI + +%package -n %{name}-plugin-tornado3 +Summary: uWSGI - Plugin for Tornado/Python3 support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, python3-tornado + +%description -n %{name}-plugin-tornado3 +This package contains the tornado (python v3) plugin for uWSGI + %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons @@ -762,6 +778,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %build CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/tornado fedora tornado3 %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install @@ -1026,6 +1043,12 @@ exit 0 %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so +%files -n %{name}-plugin-tornado +%{_libdir}/%{name}/tornado_plugin.so + +%files -n %{name}-plugin-tornado3 +%{_libdir}/%{name}/tornado3_plugin.so + %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so From fcd5d0cfe883845ff0db43fb77843101876f2631 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 13:21:02 -0700 Subject: [PATCH 135/427] Adding http transformation plugins --- fedora.ini | 2 +- uwsgi.spec | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index a4f44bc..368e66f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 23134b7..00872e9 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -135,6 +135,56 @@ Requires: %{name}-plugin-common, gloox %description -n %{name}-alarm-xmpp This package contains the alarm_xmpp alarm plugin for uWSGI +# Transformations + +%package -n %{name}-transformation-chunked +Summary: uWSGI - Chunked Transformation plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi + +%description -n %{name}-transformation-chunked +This package contains the transformation_chunked plugin for uWSGI + +%package -n %{name}-transformation-gzip +Summary: uWSGI - GZip Transformation plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi + +%description -n %{name}-transformation-gzip +This package contains the transformation_gzip plugin for uWSGI + +%package -n %{name}-transformation-offload +Summary: uWSGI - Off-Load Transformation plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi + +%description -n %{name}-transformation-offload +This package contains the transformation_offload plugin for uWSGI + +%package -n %{name}-transformation-template +Summary: uWSGI - Template Transformation plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi + +%description -n %{name}-transformation-template +This package contains the transformation_template plugin for uWSGI + +%package -n %{name}-transformation-tofile +Summary: uWSGI - ToFile Transformation plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi + +%description -n %{name}-transformation-tofile +This package contains the transformation_tofile plugin for uWSGI + +%package -n %{name}-transformation-toupper +Summary: uWSGI - ToUpper Transformation plugin +Group: System Environment/Daemons +Requires: %{name}-plugin-common, %{name}-plugin-http + +%description -n %{name}-transformation-toupper +This package contains the transformation_toupper plugin for uWSGI + # Loggers %package -n %{name}-log-encoder-msgpack @@ -887,6 +937,26 @@ exit 0 %files -n %{name}-alarm-xmpp %{_libdir}/%{name}/alarm_xmpp_plugin.so +# Transformations + +%files -n %{name}-transformation-chunked +%{_libdir}/%{name}/transformation_chunked_plugin.so + +%files -n %{name}-transformation-gzip +%{_libdir}/%{name}/transformation_gzip_plugin.so + +%files -n %{name}-transformation-offload +%{_libdir}/%{name}/transformation_offload_plugin.so + +%files -n %{name}-transformation-template +%{_libdir}/%{name}/transformation_template_plugin.so + +%files -n %{name}-transformation-tofile +%{_libdir}/%{name}/transformation_tofile_plugin.so + +%files -n %{name}-transformation-toupper +%{_libdir}/%{name}/transformation_toupper_plugin.so + # Loggers %files -n %{name}-log-encoder-msgpack From d4a86769079b7bce6f5747e132541db40db37625 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 13:32:41 -0700 Subject: [PATCH 136/427] Adding -router-tuntap --- fedora.ini | 2 +- uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 368e66f..f7a31c8 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 00872e9..1b397af 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -783,6 +783,14 @@ Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-static This package contains the Static router plugin for uWSGI +%package -n %{name}-router-tuntap +Summary: uWSGI - Plugin for TUN/TAP router support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-router-tuntap +This package contains the tuntap router plugin for uWSGI + %package -n %{name}-router-uwsgi Summary: uWSGI - Plugin for uWSGI router support Group: System Environment/Daemons @@ -1178,6 +1186,9 @@ exit 0 %files -n %{name}-router-static %{_libdir}/%{name}/router_static_plugin.so +%files -n %{name}-router-tuntap +%{_libdir}/%{name}/tuntap_plugin.so + %files -n %{name}-router-uwsgi %{_libdir}/%{name}/router_uwsgi_plugin.so From a262b38c3a1abf3c8472770c9fc3823fb2444547 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 13:45:36 -0700 Subject: [PATCH 137/427] Adding -plugin-v8 --- fedora.ini | 2 +- uwsgi.spec | 35 +++++++++++++++++++++++------------ 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/fedora.ini b/fedora.ini index f7a31c8..ac6516f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 1b397af..4bd5574 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -36,7 +36,7 @@ BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel -BuildRequires: libmongodb-devel, mono-devel, openldap-devel +BuildRequires: libmongodb-devel, mono-devel, openldap-devel, v8-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -585,14 +585,6 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-ssi This package contains the ssi plugin for uWSGI -%package -n %{name}-plugin-ugreen -Summary: uWSGI - Plugin for uGreen support -Group: System Environment/Daemons -Requires: %{name}-plugin-common - -%description -n %{name}-plugin-ugreen -This package contains the uGreen plugin for uWSGI - %package -n %{name}-plugin-tornado Summary: uWSGI - Plugin for Tornado support Group: System Environment/Daemons @@ -609,6 +601,22 @@ Requires: %{name}-plugin-common, python3-tornado %description -n %{name}-plugin-tornado3 This package contains the tornado (python v3) plugin for uWSGI +%package -n %{name}-plugin-ugreen +Summary: uWSGI - Plugin for uGreen support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-ugreen +This package contains the uGreen plugin for uWSGI + +%package -n %{name}-plugin-v8 +Summary: uWSGI - Plugin for v8 support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, v8 + +%description -n %{name}-plugin-v8 +This package contains the v8 plugin for uWSGI + %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons @@ -1118,15 +1126,18 @@ exit 0 %files -n %{name}-plugin-ssi %{_libdir}/%{name}/ssi_plugin.so -%files -n %{name}-plugin-ugreen -%{_libdir}/%{name}/ugreen_plugin.so - %files -n %{name}-plugin-tornado %{_libdir}/%{name}/tornado_plugin.so %files -n %{name}-plugin-tornado3 %{_libdir}/%{name}/tornado3_plugin.so +%files -n %{name}-plugin-ugreen +%{_libdir}/%{name}/ugreen_plugin.so + +%files -n %{name}-plugin-v8 +%{_libdir}/%{name}/v8_plugin.so + %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so From f09a4b1bc0aa03afafb8fbb4fcee1e4e2958f0c3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 13:57:29 -0700 Subject: [PATCH 138/427] Adding -plugin-webdav --- fedora.ini | 2 +- uwsgi.spec | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index ac6516f..8290516 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, webdav, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 4bd5574..206b428 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -37,6 +37,7 @@ BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel BuildRequires: libmongodb-devel, mono-devel, openldap-devel, v8-devel +BuildRequires: libattr-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -617,6 +618,14 @@ Requires: %{name}-plugin-common, v8 %description -n %{name}-plugin-v8 This package contains the v8 plugin for uWSGI +%package -n %{name}-plugin-webdav +Summary: uWSGI - Plugin for WebDAV support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libattr + +%description -n %{name}-plugin-webdav +This package contains the webdav plugin for uWSGI + %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons @@ -1138,6 +1147,9 @@ exit 0 %files -n %{name}-plugin-v8 %{_libdir}/%{name}/v8_plugin.so +%files -n %{name}-plugin-webdav +%{_libdir}/%{name}/webdav_plugin.so + %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so From df5862368c6c86a9cd509e469ecdca29be6872e1 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 14:03:36 -0700 Subject: [PATCH 139/427] Adding -plugin-xslt --- fedora.ini | 2 +- uwsgi.spec | 24 +++++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 8290516..18a361d 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, webdav, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, webdav, xattr, xslt, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 206b428..2de2de3 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -37,7 +37,7 @@ BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel BuildRequires: libmongodb-devel, mono-devel, openldap-devel, v8-devel -BuildRequires: libattr-devel +BuildRequires: libattr-devel, libxslt-devel Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -626,6 +626,22 @@ Requires: %{name}-plugin-common, libattr %description -n %{name}-plugin-webdav This package contains the webdav plugin for uWSGI +%package -n %{name}-plugin-xattr +Summary: uWSGI - Plugin for Extra Attributes support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libattr + +%description -n %{name}-plugin-xattr +This package contains the xattr plugin for uWSGI + +%package -n %{name}-plugin-xslt +Summary: uWSGI - Plugin for XSLT transformation support +Group: System Environment/Daemons +Requires: %{name}-plugin-common, libxslt + +%description -n %{name}-plugin-xslt +This package contains the xslt plugin for uWSGI + %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons @@ -1150,6 +1166,12 @@ exit 0 %files -n %{name}-plugin-webdav %{_libdir}/%{name}/webdav_plugin.so +%files -n %{name}-plugin-xattr +%{_libdir}/%{name}/xattr_plugin.so + +%files -n %{name}-plugin-xslt +%{_libdir}/%{name}/xslt_plugin.so + %files -n %{name}-plugin-zergpool %{_libdir}/%{name}/zergpool_plugin.so From 4711c9826d34a073b3eb3924e5b64ff8e1cff38f Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 14:11:33 -0700 Subject: [PATCH 140/427] Adding -stats-pusher-zabbix --- fedora.ini | 2 +- uwsgi.spec | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 18a361d..756c6a4 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, webdav, xattr, xslt, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, webdav, xattr, xslt, zabbix, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 2de2de3..0f53375 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -118,6 +118,13 @@ Requires: %{name}-plugins-common %description -n %{name}-stats-pusher-statsd This package contains the stats_pusher_statsd plugin for uWSGI +%package -n %{name}-stats-pusher-zabbix +Summary: uWSGI - Zabbix Stats Pusher for uWSGI +Requires: %{name}-plugins-common + +%description -n %{name}-stats-pusher-zabbix +This package contains the zabbix plugin for uWSGI + # Alarms %package -n %{name}-alarm-curl @@ -970,6 +977,9 @@ exit 0 %files -n %{name}-stats-pusher-statsd %{_libdir}/%{name}/stats_pusher_statsd_plugin.so +%files -n %{name}-stats-pusher-zabbix +%{_libdir}/%{name}/zabbix_plugin.so + # Alarms %files -n %{name}-alarm-curl From 7807a37c0fb5475ccf271475abb6924023021591 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sun, 7 Sep 2014 14:54:47 -0700 Subject: [PATCH 141/427] Releasing 2.0.6-1 --- uwsgi.spec | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0f53375..e5ef340 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -12,7 +12,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber}%{?patchnumber} -Release: 0%{dist} +Release: 1%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1257,6 +1257,61 @@ exit 0 %changelog +* Sun Sep 07 2014 Jorge A Gallegos - 2.0.6-1 +- Adding -stats-pusher-zabbix (Jorge Gallegos) +- Adding -plugin-xslt (Jorge Gallegos) +- Adding -plugin-webdav (Jorge Gallegos) +- Adding -plugin-v8 (Jorge Gallegos) +- Adding -router-tuntap (Jorge Gallegos) +- Adding http transformation plugins (Jorge Gallegos) +- Adding -plugin-tornado and -plugin-tornado3 (Jorge Gallegos) +- Adding all -stats-pusher-* plugins (Jorge Gallegos) +- Adding -plugin-ssi (Jorge Gallegos) +- Adding -plugin-ldap (Jorge Gallegos) +- Adding -plugin-sqlite3 (Jorge Gallegos) +- Adding -plugin-spooler (Jorge Gallegos) +- Adding -plugin-jwsgi (Jorge Gallegos) +- Adding -plugin-ring (Jorge Gallegos) +- Adding -plugin-rbthreads (Jorge Gallegos) +- Adding -plugin-pty (Jorge Gallegos) +- Adding -log-encoder-msgpack (Jorge Gallegos) +- Adding -plugin-mono (Jorge Gallegos) +- Adding -plugin-mongrel2 (Jorge Gallegos) +- Adding -plugin-gridfs (Jorge Gallegos) +- Adding -logger-graylog2 (Jorge Gallegos) +- Adding -plugin-glusterfs (Jorge Gallegos) +- Adding -plugin-gevent (Jorge Gallegos) +- Adding -plugin-geoip (Jorge Gallegos) +- Adding -plugin-gccgo (Jorge Gallegos) +- Adding -plugin-fiber (Jorge Gallegos) +- Adding -plugin-dumbloop (Jorge Gallegos) +- Adding -plugin-curl-cron (Jorge Gallegos) +- Adding -plugin-cplusplus (Jorge Gallegos) +- Adding -plugin-coroae (Jorge Gallegos) +- Adding -alarm-xmpp (Jorge Gallegos) +- Adding -alarm-curl (Jorge Gallegos) +- Packaging -plugin-airbrake (Jorge Gallegos) +- Broke up -routers into its individual -router-* (Jorge Gallegos) +- Renaming -plugin-sslrouter to -router-ssl (Jorge Gallegos) +- Renaming -plugin-rawrouter to -router-raw (Jorge Gallegos) +- Splitting off the documentation to its subpackage (Jorge Gallegos) +- Splitting off some non-essential embedded plugins: (Jorge Gallegos) +- Splitting off -logger-syslog (Jorge Gallegos) +- Splitting off -logger-rsyslog (Jorge Gallegos) +- Splitting off -logger-redis (Jorge Gallegos) +- Splitting off -logger-mongodb (Jorge Gallegos) +- Splitting off -logger-socket (Jorge Gallegos) +- Splitting off -logger-file (Jorge Gallegos) +- Splitting off -logger-pipe (Jorge Gallegos) +- Splitting off -logger-crypto instead (Jorge Gallegos) +- Break out the major/minor/release numbers properly (Jorge Gallegos) +- Reorganized spec, alphabetical and type (Jorge Gallegos) +- Splitting -router-fastrouter out of -common (Jorge Gallegos) +- Splitting out the README, I will be putting more stuff in here (Jorge Gallegos) +- Adding -logger-systemd plugin (Jorge Gallegos) +- Adding -logger-zeromq plugin (Jorge Gallegos) +- Adding new sources for newest stable (Jorge Gallegos) + * Mon Aug 18 2014 Fedora Release Engineering - 1.9.19-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild From 9d487b9f028f522f5d7fc54972db7fe7a28bcdab Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 8 Sep 2014 09:40:20 -0700 Subject: [PATCH 142/427] Updating to 2.0.7 --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 7 +++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index c09c5ba..b007654 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,5 @@ /uwsgi-docs-119b215.tar.gz /uwsgi-2.0.6.tar.gz /uwsgi-docs-d2c4969.tar.gz +/uwsgi-2.0.7.tar.gz +/uwsgi-docs-f551708.tar.gz diff --git a/sources b/sources index ff8d44d..2275cae 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -50e9657ebbf52dd3bcd57b565f6b65a5 uwsgi-2.0.6.tar.gz -5d2c7424b6edd2062687a03abdab0619 uwsgi-docs-d2c4969.tar.gz +c18da6536f2f47a204814225ba695042 uwsgi-2.0.7.tar.gz +cf9e51070bc08080bb57adba72bdd752 uwsgi-docs-f551708.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index e5ef340..d966feb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 6 +%global releasenumber 7 # Documentation sources: -%global commit d2c4969e82c12b316889bcdce348d200b45c4a3e +%global commit f5517089e9c0a6082eb7ecb691c79e16e870a0cb %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -1257,6 +1257,9 @@ exit 0 %changelog +* Mon Sep 08 2014 Jorge A Gallegos - 2.0.7-1 +- I am just done now, and there's a new version out already. Go figure. + * Sun Sep 07 2014 Jorge A Gallegos - 2.0.6-1 - Adding -stats-pusher-zabbix (Jorge Gallegos) - Adding -plugin-xslt (Jorge Gallegos) From c2bc6e5113b96a9d3b9ab412b28d5d43edffc62d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 18 Sep 2014 07:43:46 -0700 Subject: [PATCH 143/427] -plugin-http doesn't exist, is in -plugin-common --- uwsgi.spec | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index d966feb..94cd5da 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -92,35 +92,35 @@ plugins included in this package are: cache, CGI, RPC, uGreen %package -n %{name}-stats-pusher-file Summary: uWSGI - File Stats Pusher for uWSGI -Requires: %{name}-plugins-common +Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-file This package contains the stats_pusher_file plugin for uWSGI %package -n %{name}-stats-pusher-mongodb Summary: uWSGI - MongoDB Stats Pusher for uWSGI -Requires: %{name}-plugins-common +Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-mongodb This package contains the stats_pusher_mongodb plugin for uWSGI %package -n %{name}-stats-pusher-socket Summary: uWSGI - Socket Stats Pusher for uWSGI -Requires: %{name}-plugins-common +Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-socket This package contains the stats_pusher_socket plugin for uWSGI %package -n %{name}-stats-pusher-statsd Summary: uWSGI - StatsD Stats Pusher for uWSGI -Requires: %{name}-plugins-common +Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-statsd This package contains the stats_pusher_statsd plugin for uWSGI %package -n %{name}-stats-pusher-zabbix Summary: uWSGI - Zabbix Stats Pusher for uWSGI -Requires: %{name}-plugins-common +Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-zabbix This package contains the zabbix plugin for uWSGI @@ -148,7 +148,7 @@ This package contains the alarm_xmpp alarm plugin for uWSGI %package -n %{name}-transformation-chunked Summary: uWSGI - Chunked Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi +Requires: %{name}-plugin-common, %{name}-router-uwsgi %description -n %{name}-transformation-chunked This package contains the transformation_chunked plugin for uWSGI @@ -156,7 +156,7 @@ This package contains the transformation_chunked plugin for uWSGI %package -n %{name}-transformation-gzip Summary: uWSGI - GZip Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi +Requires: %{name}-plugin-common, %{name}-router-uwsgi %description -n %{name}-transformation-gzip This package contains the transformation_gzip plugin for uWSGI @@ -164,7 +164,7 @@ This package contains the transformation_gzip plugin for uWSGI %package -n %{name}-transformation-offload Summary: uWSGI - Off-Load Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi +Requires: %{name}-plugin-common, %{name}-router-uwsgi %description -n %{name}-transformation-offload This package contains the transformation_offload plugin for uWSGI @@ -172,7 +172,7 @@ This package contains the transformation_offload plugin for uWSGI %package -n %{name}-transformation-template Summary: uWSGI - Template Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi +Requires: %{name}-plugin-common, %{name}-router-uwsgi %description -n %{name}-transformation-template This package contains the transformation_template plugin for uWSGI @@ -180,7 +180,7 @@ This package contains the transformation_template plugin for uWSGI %package -n %{name}-transformation-tofile Summary: uWSGI - ToFile Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-http, %{name}-router-uwsgi +Requires: %{name}-plugin-common, %{name}-router-uwsgi %description -n %{name}-transformation-tofile This package contains the transformation_tofile plugin for uWSGI @@ -188,7 +188,7 @@ This package contains the transformation_tofile plugin for uWSGI %package -n %{name}-transformation-toupper Summary: uWSGI - ToUpper Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-http +Requires: %{name}-plugin-common %description -n %{name}-transformation-toupper This package contains the transformation_toupper plugin for uWSGI From bdc6fdc081b1efcd66c15da9e76f6cf94488de36 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 18 Sep 2014 07:46:18 -0700 Subject: [PATCH 144/427] Fixing upgrade-path issues --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 94cd5da..f3ccd3f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -12,7 +12,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber}%{?patchnumber} -Release: 1%{dist} +Release: 2%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1257,6 +1257,9 @@ exit 0 %changelog +* Thu Sep 18 2014 Jorge A Gallegos - 2.0.7-2 +- -plugin-http doesn't exist, is in -plugin-common (Jorge Gallegos) + * Mon Sep 08 2014 Jorge A Gallegos - 2.0.7-1 - I am just done now, and there's a new version out already. Go figure. From b2f4d05e94a3b62bc16ea77e2b377dd7865535ce Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 16 Sep 2014 09:06:03 -0700 Subject: [PATCH 145/427] Conditionally enable systemd integration EL6 does not have systemd bits, so you can't use it. --- uwsgi.spec | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index f3ccd3f..2bf451a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,6 +10,13 @@ %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} +# Enable systemd except on EL6 +%if 0%{?fedora} || 0%{?rhel} >= 7 +%bcond_without systemd +%else +%bcond_with systemd +%endif + Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber}%{?patchnumber} Release: 2%{dist} @@ -31,22 +38,27 @@ BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-deve BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel -BuildRequires: bzip2-devel, gmp-devel, systemd-units, pam-devel -BuildRequires: java-devel, sqlite-devel, libcap-devel, systemd-devel +BuildRequires: bzip2-devel, gmp-devel, pam-devel +BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel BuildRequires: libmongodb-devel, mono-devel, openldap-devel, v8-devel BuildRequires: libattr-devel, libxslt-devel +%if %{with systemd} +BuildRequires: systemd-devel, systemd-units +%endif Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 Obsoletes: %{name}-plugin-admin <= 2.0.6 Requires(pre): shadow-utils +%if %{with systemd} Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units +%endif %description uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly @@ -287,6 +299,7 @@ Provides: %{name}-plugin-syslog = %{version}-%{release} %description -n %{name}-logger-syslog This package contains the syslog logger plugin for uWSGI +%if %{with systemd} %package -n %{name}-logger-systemd Summary: uWSGI - SystemD Journal logger plugin Group: System Environment/Daemons @@ -294,6 +307,7 @@ Requires: %{name}-plugin-common %description -n %{name}-logger-systemd This package contains the SystemD Journal logger plugin for uWSGI +%endif %package -n %{name}-logger-zeromq Summary: uWSGI - ZeroMQ logger plugin @@ -863,7 +877,9 @@ Fully Apache API compliant proxy module %prep %setup -q cp -p %{SOURCE1} buildconf/ +%if %{with systemd} cp -p %{SOURCE2} %{name}.service +%endif cp -p %{SOURCE3} %{name}.ini cp -p %{SOURCE4} uwsgi-docs.tar.gz cp -p %{SOURCE5} README.Fedora @@ -900,7 +916,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini +%if %{with systemd} %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service +%endif %{__install} -p -m 0755 apache2/.libs/mod_proxy_%{name}.so %{buildroot}%{_httpd_moddir}/mod_proxy_%{name}.so @@ -912,6 +930,7 @@ getent passwd uwsgi >/dev/null || \ exit 0 %post +%if %{with systemd} %if 0%{?systemd_post:1} %systemd_post uwsgi.service %else @@ -920,8 +939,12 @@ exit 0 /bin/systemctl daemon-reload >/dev/null 2>&1 || : fi %endif +%else +echo "No SystemD post-install step necessary" +%endif %preun +%if %{with systemd} %if 0%{?systemd_preun:1} %systemd_preun uwsgi.service %else @@ -931,8 +954,12 @@ exit 0 /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : fi %endif +%else +echo "No SystemD pre-uninstall step necessary" +%endif %postun +%if %{with systemd} %if 0%{?systemd_postun:1} %systemd_postun uwsgi.service %else @@ -942,6 +969,9 @@ exit 0 /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : fi %endif +%else +echo "No SystemD post-uninstall step necessary" +%endif %files @@ -1040,8 +1070,10 @@ exit 0 %files -n %{name}-logger-syslog %{_libdir}/%{name}/syslog_plugin.so +%if %{with systemd} %files -n %{name}-logger-systemd %{_libdir}/%{name}/systemd_logger_plugin.so +%endif %files -n %{name}-logger-zeromq %{_libdir}/%{name}/logzmq_plugin.so From b7d3577ccbde650fb62085ccf1e7552a699995c5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 16 Sep 2014 09:11:15 -0700 Subject: [PATCH 146/427] SystemD service definition sysconfig support Forgot to add this before, and given that uWSGI *does* offer strong support for environment variables, makes sense. --- uwsgi.service | 1 + 1 file changed, 1 insertion(+) diff --git a/uwsgi.service b/uwsgi.service index e2f2446..939890f 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -3,6 +3,7 @@ Description=uWSGI Emperor Service After=syslog.target [Service] +EnvironmentFile=-/etc/sysconfig/uwsgi ExecStartPre=/bin/mkdir -p /run/uwsgi ExecStartPre=/bin/chown uwsgi:uwsgi /run/uwsgi ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini From 3ccbbc7efeedfd9ac64552a5df639b71ae75d68c Mon Sep 17 00:00:00 2001 From: John Date: Fri, 16 Jan 2015 19:34:42 +0900 Subject: [PATCH 147/427] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_2.2 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2bf451a..330ee60 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -19,7 +19,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber}%{?patchnumber} -Release: 2%{dist} +Release: 3%{dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1289,6 +1289,9 @@ echo "No SystemD post-uninstall step necessary" %changelog +* Fri Jan 16 2015 Mamoru TASAKA - 2.0.7-3 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_2.2 + * Thu Sep 18 2014 Jorge A Gallegos - 2.0.7-2 - -plugin-http doesn't exist, is in -plugin-common (Jorge Gallegos) From 6e79929fec46f12c5db24641e08f83797da3c611 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 26 Feb 2015 20:47:32 -0800 Subject: [PATCH 148/427] Simple SysV script --- uwsgi.init | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 uwsgi.init diff --git a/uwsgi.init b/uwsgi.init new file mode 100644 index 0000000..05c8a68 --- /dev/null +++ b/uwsgi.init @@ -0,0 +1,92 @@ +#!/bin/sh +# +# uwsgi - this script starts and stops the uwsgi emperor +# +# chkconfig: - 85 15 +# description: Fast, self-healing, application container server +# processname: uwsgi +# config: /etc/uwsgi.ini +# config: /etc/uwsgi.d + +# Source function library. +. /etc/rc.d/init.d/functions + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +PROG=/usr/sbin/uwsgi +OWNER=uwsgi +NAME=uwsgi +DESC="Fast, self-healing, application container server" +DAEMON_OPTS="--ini /etc/uwsgi.ini" + +[ -f /etc/sysconfig/uwsgi ] && . /etc/sysconfig/uwsgi + +lockfile=/var/lock/subsys/uwsgi + +start () { + echo -n "Starting $NAME $DESC: " + daemon $PROG $DAEMON_OPTS + retval=$? + echo + [ $retval -eq 0 ] && touch $lockfile + return $retval +} + +stop () { + echo -n "Stopping $NAME $DESC: " + # uWSGI docs say INT is a gentler way to stop + killproc $PROG -INT + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +reload () { + echo "Reloading $NAME" + killproc $PROG -HUP + RETVAL=$? + echo +} + +restart () { + stop + start +} + +rh_status () { + status $PROG +} + +rh_status_q() { + rh_status >/dev/null 2>&1 +} + +case "$1" in + start) + rh_status_q && exit 0 + $1 + ;; + stop) + rh_status_q || exit 0 + $1 + ;; + restart) + $1 + ;; + reload) + rh_status_q || exit 7 + $1 + ;; + status) + rh_status + ;; + condrestart|try-restart) + rh_status_q || exit 0 + restart + ;; + *) + echo "Usage: $0 {start|stop|restart|condrestart|try-restart|reload|status}" >&2 + exit 2 + ;; +esac +exit 0 From 62e4bf0739d60f5ad49bc8fb489ca3c7a2191fb7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 26 Feb 2015 21:04:26 -0800 Subject: [PATCH 149/427] Updating to newer version --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 11 +++++++---- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index b007654..dbb1a7b 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,5 @@ /uwsgi-docs-d2c4969.tar.gz /uwsgi-2.0.7.tar.gz /uwsgi-docs-f551708.tar.gz +/uwsgi-2.0.9.tar.gz +/uwsgi-docs-bc49905.tar.gz diff --git a/sources b/sources index 2275cae..530aa5a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -c18da6536f2f47a204814225ba695042 uwsgi-2.0.7.tar.gz -cf9e51070bc08080bb57adba72bdd752 uwsgi-docs-f551708.tar.gz +44a5b044ea8416e7af310df0dea9caf8 uwsgi-2.0.9.tar.gz +0054aa2982003a3075678d4773ccef0f uwsgi-docs-bc49905.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index 330ee60..ac44072 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 7 +%global releasenumber 9 # Documentation sources: -%global commit f5517089e9c0a6082eb7ecb691c79e16e870a0cb +%global commit bc49905603e3f188e4e47692942a7bbeaee990c6 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -18,8 +18,8 @@ %endif Name: uwsgi -Version: %{majornumber}.%{minornumber}.%{releasenumber}%{?patchnumber} -Release: 3%{dist} +Version: 2.0.9 +Release: 0 Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1289,6 +1289,9 @@ echo "No SystemD post-uninstall step necessary" %changelog +* Fri Feb 27 2015 Jorge A Gallegos - 2.0.9-0 +- New version + * Fri Jan 16 2015 Mamoru TASAKA - 2.0.7-3 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_2.2 From 04aa0dba971b9a1ee8e484c065506cda1a050259 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 27 Feb 2015 08:34:13 -0800 Subject: [PATCH 150/427] System V initscript hoopla --- uwsgi.spec | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index ac44072..38bd9a2 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -30,6 +30,7 @@ Source2: uwsgi.service Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Source5: README.Fedora +Source6: uwsgi.init Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch @@ -58,6 +59,10 @@ Requires(pre): shadow-utils Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units +%else +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): initscripts %endif %description @@ -879,6 +884,8 @@ Fully Apache API compliant proxy module cp -p %{SOURCE1} buildconf/ %if %{with systemd} cp -p %{SOURCE2} %{name}.service +%else +cp -p %{SOURCE6} %{name}.init %endif cp -p %{SOURCE3} %{name}.ini cp -p %{SOURCE4} uwsgi-docs.tar.gz @@ -918,6 +925,8 @@ gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %if %{with systemd} %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service +%else +%{__install} -p -m 0755 %{name}.init %{buildroot}%{_initddir}/%{name} %endif %{__install} -p -m 0755 apache2/.libs/mod_proxy_%{name}.so %{buildroot}%{_httpd_moddir}/mod_proxy_%{name}.so @@ -931,6 +940,7 @@ exit 0 %post %if %{with systemd} +echo "Executing systemd post-install tasks" %if 0%{?systemd_post:1} %systemd_post uwsgi.service %else @@ -940,11 +950,13 @@ exit 0 fi %endif %else -echo "No SystemD post-install step necessary" +echo "Executing System V post-install tasks" +/sbin/chkconfig --add %{name} %endif %preun %if %{with systemd} +echo "Executing systemd pre-uninstall tasks" %if 0%{?systemd_preun:1} %systemd_preun uwsgi.service %else @@ -955,11 +967,16 @@ echo "No SystemD post-install step necessary" fi %endif %else -echo "No SystemD pre-uninstall step necessary" +echo "Executing System V pre-uninstall tasks" +if [ $1 -eq 0 ] ; then + /sbin/service %{name} stop >/dev/null 2>&1 + /sbin/chkconfig --del %{name} +fi %endif %postun %if %{with systemd} +echo "Executing systemd post-uninstall tasks" %if 0%{?systemd_postun:1} %systemd_postun uwsgi.service %else @@ -970,7 +987,10 @@ echo "No SystemD pre-uninstall step necessary" fi %endif %else -echo "No SystemD post-uninstall step necessary" +echo "Executing System V post-uninstall tasks" +if [ "$1" -ge "1" ] ; then + /sbin/service %{name} condrestart >/dev/null 2>&1 || : +fi %endif From 88482daef41ed0c8154665540e61a9f265b5ac28 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 6 Mar 2015 09:25:42 -0800 Subject: [PATCH 151/427] EL6 backwards-compatible changes --- fedora.ini | 2 +- uwsgi.spec | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 67 insertions(+), 6 deletions(-) diff --git a/fedora.ini b/fedora.ini index 756c6a4..25ebe0d 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, fiber, forkptyrouter, gccgo, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, rbthreads, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, systemd_logger, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, tuntap, ugreen, v8, webdav, xattr, xslt, zabbix, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, v8, webdav, xattr, xslt, zabbix, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 38bd9a2..b9e3fd6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,11 +10,26 @@ %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} -# Enable systemd except on EL6 +# Conditionally enable some plugins in newer epel %if 0%{?fedora} || 0%{?rhel} >= 7 %bcond_without systemd +%bcond_without go +%bcond_without python3 +%bcond_without ruby19 +%bcond_without mongodblibs +%bcond_without tuntap %else +# el6 doesn't use systemd %bcond_with systemd +# el6 doesn't have go +%bcond_with go +# el6 doesn't have python3 +%bcond_with python3 +# el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 +%bcond_with ruby19 +# this fails in el6 not sure why +%bcond_with mongodblibs +%bcond_with tuntap %endif Name: uwsgi @@ -37,14 +52,21 @@ Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed -BuildRequires: python3-devel, python-greenlet-devel, lua-devel, ruby, pcre-devel +%if %{with python3} +BuildRequires: python3-devel +%endif +BuildRequires: python-greenlet-devel, lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel -BuildRequires: gloox-devel, perl-Coro, libstdc++-devel, libgo-devel, gcc-go +BuildRequires: gloox-devel, perl-Coro, libstdc++-devel +%if %{with go} +BuildRequires: libgo-devel, gcc-go +%endif BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel -BuildRequires: libmongodb-devel, mono-devel, openldap-devel, v8-devel +BuildRequires: mono-devel, mono-web, openldap-devel, v8-devel +BuildRequires: libmongodb-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel %if %{with systemd} BuildRequires: systemd-devel, systemd-units @@ -897,14 +919,37 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch3 -p1 %build -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini +%if %{with mongodblibs} +CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini +%else +UWSGI_MONGODB_NOLIB=1 CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini +%endif +%if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/tornado fedora tornado3 +%endif +%if %{with go} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/gccgo fedora +%endif +%if %{with ruby19} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/fiber fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/rbthreads fedora +%endif +%if %{with systemd} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/systemd_logger fedora +%endif +%if %{with tuntap} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/tuntap fedora +%endif %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d +%if %{with systemd} mkdir -p %{buildroot}%{_unitdir} +%else +mkdir -p %{buildroot}%{_initddir} +%endif mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_includedir}/%{name} mkdir -p %{buildroot}%{_libdir}/%{name} @@ -997,7 +1042,11 @@ fi %files %{_sbindir}/%{name} %{_sysconfdir}/%{name}.ini +%if %{with systemd} %{_unitdir}/%{name}.service +%else +%{_initddir}/%{name} +%endif %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} %doc LICENSE README README.Fedora CHANGELOG @@ -1121,11 +1170,15 @@ fi %files -n %{name}-plugin-dumbloop %{_libdir}/%{name}/dumbloop_plugin.so +%if %{with ruby19} %files -n %{name}-plugin-fiber %{_libdir}/%{name}/fiber_plugin.so +%endif +%if %{with go} %files -n %{name}-plugin-gccgo %{_libdir}/%{name}/gccgo_plugin.so +%endif %files -n %{name}-plugin-geoip %{_libdir}/%{name}/geoip_plugin.so @@ -1183,14 +1236,18 @@ fi %files -n %{name}-plugin-python %{_libdir}/%{name}/python_plugin.so +%if %{with python3} %files -n %{name}-plugin-python3 %{_libdir}/%{name}/python3_plugin.so +%endif %files -n %{name}-plugin-rack %{_libdir}/%{name}/rack_plugin.so +%if %{with ruby19} %files -n %{name}-plugin-rbthreads %{_libdir}/%{name}/rbthreads_plugin.so +%endif %files -n %{name}-plugin-ring %{_libdir}/%{name}/ring_plugin.so @@ -1216,8 +1273,10 @@ fi %files -n %{name}-plugin-tornado %{_libdir}/%{name}/tornado_plugin.so +%if %{with python3} %files -n %{name}-plugin-tornado3 %{_libdir}/%{name}/tornado3_plugin.so +%endif %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so @@ -1293,8 +1352,10 @@ fi %files -n %{name}-router-static %{_libdir}/%{name}/router_static_plugin.so +%if %{with tuntap} %files -n %{name}-router-tuntap %{_libdir}/%{name}/tuntap_plugin.so +%endif %files -n %{name}-router-uwsgi %{_libdir}/%{name}/router_uwsgi_plugin.so From 6c2446c0b0e96571c1e257d884fb934cb30ee5ad Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 10 Mar 2015 21:28:59 -0700 Subject: [PATCH 152/427] epel7 compatible --- fedora.ini | 2 +- uwsgi.spec | 105 +++++++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 94 insertions(+), 13 deletions(-) diff --git a/fedora.ini b/fedora.ini index 25ebe0d..3e6bf94 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, coroae, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, glusterfs, graylog2, greenlet, gridfs, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, logzmq, lua, mongodblog, mongrel2, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, v8, webdav, xattr, xslt, zabbix, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, lua, mongodblog, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, v8, webdav, xattr, xslt, zabbix, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index b9e3fd6..33da413 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,16 +10,24 @@ %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} -# Conditionally enable some plugins in newer epel -%if 0%{?fedora} || 0%{?rhel} >= 7 +# This is primarily built for fedora, make it easy right now +%if 0%{?fedora} %bcond_without systemd %bcond_without go %bcond_without python3 %bcond_without ruby19 -%bcond_without mongodblibs +%bcond_without gridfs %bcond_without tuntap -%else -# el6 doesn't use systemd +%bcond_without zeromq +%bcond_without greenlet +%bcond_without perlcoro +%bcond_without glusterfs +%bcond_without mongodblibs +%endif + +# Conditionally disable some things in epel6 +%if 0%{?rhel} == 6 +# el6 doesn't ship with systemd %bcond_with systemd # el6 doesn't have go %bcond_with go @@ -27,14 +35,32 @@ %bcond_with python3 # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 -# this fails in el6 not sure why -%bcond_with mongodblibs +# this fails in el not sure why +%bcond_with gridfs %bcond_with tuntap +%bcond_with mongodblibs +%endif + +# Conditionally disable some things in epel7 +%if 0%{?rhel} == 7 +# el7 doesn't ship with systemd +%bcond_with systemd +# el7 doesn't have python3 +%bcond_with python3 +# el7 doesn't have zeromq +%bcond_with zeromq +# el7 doesn't have greenlet +%bcond_with greenlet +# el7 doesn't have perl-Coro +%bcond_with perlcoro +# this fails in el not sure why +%bcond_with glusterfs +%bcond_with gridfs %endif Name: uwsgi Version: 2.0.9 -Release: 0 +Release: 1 Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -55,16 +81,28 @@ BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} BuildRequires: python3-devel %endif -BuildRequires: python-greenlet-devel, lua-devel, ruby, pcre-devel +%if %{with greenlet} +BuildRequires: python-greenlet-devel +%endif +%if %{with glusterfs} +BuildRequires: glusterfs-devel, glusterfs-api-devel +%endif +BuildRequires: lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel -BuildRequires: httpd-devel, tcp_wrappers-devel, zeromq-devel, libcurl-devel -BuildRequires: gloox-devel, perl-Coro, libstdc++-devel +BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel +BuildRequires: gloox-devel, libstdc++-devel +%if %{with perlcoro} +BuildRequires: perl-Coro +%endif +%if %{with zeromq} +BuildRequires: zeromq-devel +%endif %if %{with go} BuildRequires: libgo-devel, gcc-go %endif -BuildRequires: GeoIP-devel, libevent-devel, glusterfs-api-devel, zlib-devel +BuildRequires: GeoIP-devel, libevent-devel, zlib-devel BuildRequires: mono-devel, mono-web, openldap-devel, v8-devel BuildRequires: libmongodb-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel @@ -336,6 +374,7 @@ Requires: %{name}-plugin-common This package contains the SystemD Journal logger plugin for uWSGI %endif +%if %{with zeromq} %package -n %{name}-logger-zeromq Summary: uWSGI - ZeroMQ logger plugin Group: System Environment/Daemons @@ -343,6 +382,7 @@ Requires: %{name}-plugin-common, zeromq %description -n %{name}-logger-zeromq This package contains the ZeroMQ logger plugin for uWSGI +%endif # Plugins @@ -370,6 +410,7 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-carbon This package contains the Carbon plugin for uWSGI (to use in graphite) +%if %{with perlcoro} %package -n %{name}-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons @@ -377,6 +418,7 @@ Requires: %{name}-plugin-common, %{name}-plugin-psgi, perl-Coro %description -n %{name}-plugin-coroae This package contains the coroae plugin for uWSGI +%endif %package -n %{name}-plugin-cplusplus Summary: uWSGI - Plugin for C++ support @@ -434,6 +476,7 @@ Requires: %{name}-plugin-common, libevent %description -n %{name}-plugin-gevent This package contains the gevent plugin for uWSGI +%if %{with glusterfs} %package -n %{name}-plugin-glusterfs Summary: uWSGI - Plugin for GlusterFS support Group: System Environment/Daemons @@ -441,7 +484,9 @@ Requires: %{name}-plugin-common, glusterfs-api %description -n %{name}-plugin-glusterfs This package contains the glusterfs plugin for uWSGI +%endif +%if %{with greenlet} %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons @@ -449,6 +494,7 @@ Requires: python-greenlet, %{name}-plugin-common %description -n %{name}-plugin-greenlet This package contains the python greenlet plugin for uWSGI +%endif %package -n %{name}-plugin-gridfs Summary: uWSGI - Plugin for GridFS support @@ -490,6 +536,7 @@ Requires: lua, %{name}-plugin-common %description -n %{name}-plugin-lua This package contains the lua plugin for uWSGI +%if %{with zeromq} %package -n %{name}-plugin-mongrel2 Summary: uWSGI - Plugin for Mongrel2 support Group: System Environment/Daemons @@ -497,6 +544,7 @@ Requires: %{name}-plugin-common, zeromq %description -n %{name}-plugin-mongrel2 This package contains the mongrel2 plugin for uWSGI +%endif %package -n %{name}-plugin-mono Summary: uWSGI - Plugin for Mono / .NET support @@ -941,6 +989,22 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %if %{with tuntap} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/tuntap fedora %endif +%if %{with perlcoro} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/coroae fedora +%endif +%if %{with zeromq} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/logzmq fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongrel2 fedora +%endif +%if %{with greenlet} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/greenlet fedora +%endif +%if %{with glusterfs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/glusterfs fedora +%endif +%if %{with gridfs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/gridfs fedora +%endif %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install @@ -1144,8 +1208,10 @@ fi %{_libdir}/%{name}/systemd_logger_plugin.so %endif +%if %{with zeromq} %files -n %{name}-logger-zeromq %{_libdir}/%{name}/logzmq_plugin.so +%endif # Plugins @@ -1158,8 +1224,10 @@ fi %files -n %{name}-plugin-carbon %{_libdir}/%{name}/carbon_plugin.so +%if %{with perlcoro} %files -n %{name}-plugin-coroae %{_libdir}/%{name}/coroae_plugin.so +%endif %files -n %{name}-plugin-cplusplus %{_libdir}/%{name}/cplusplus_plugin.so @@ -1186,14 +1254,20 @@ fi %files -n %{name}-plugin-gevent %{_libdir}/%{name}/gevent_plugin.so +%if %{with glusterfs} %files -n %{name}-plugin-glusterfs %{_libdir}/%{name}/glusterfs_plugin.so +%endif +%if %{with greenlet} %files -n %{name}-plugin-greenlet %{_libdir}/%{name}/greenlet_plugin.so +%endif +%if %{with gridfs} %files -n %{name}-plugin-gridfs %{_libdir}/%{name}/gridfs_plugin.so +%endif %files -n %{name}-plugin-jvm %{_libdir}/%{name}/jvm_plugin.so @@ -1208,8 +1282,10 @@ fi %files -n %{name}-plugin-lua %{_libdir}/%{name}/lua_plugin.so +%if %{with zeromq} %files -n %{name}-plugin-mongrel2 %{_libdir}/%{name}/mongrel2_plugin.so +%endif %files -n %{name}-plugin-mono %dir /usr/lib/mono/%{name}/ @@ -1370,6 +1446,11 @@ fi %changelog +* Wed Mar 11 2015 Jorge A Gallegos - 2.0.9-1 +- EPEL 6 and EPEL 7 compatible +- Plugins not compatible with epel 6 are systemd, go, python3 based, ruby19 based, gridfs and tuntap +- Plugins not compatible with epel 7 are python3 based, zeromq, greenlet, coroae, glusterfs and gridfs + * Fri Feb 27 2015 Jorge A Gallegos - 2.0.9-0 - New version From 6207ccdf3f14c84966f8d9f497ae42dec52a7102 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 11 Mar 2015 23:27:55 -0700 Subject: [PATCH 153/427] PPC is missing several dependencies Following https://fedoraproject.org/wiki/Packaging:Guidelines#BuildRequires --- uwsgi.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 33da413..82ddc68 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -60,11 +60,12 @@ Name: uwsgi Version: 2.0.9 -Release: 1 +Release: 2 Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi +ExclusiveArch: %{ix86} x86_64 %{arm} Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service @@ -1446,6 +1447,10 @@ fi %changelog +* Thu Mar 12 2015 Jorge A Gallegos - 2.0.9-2 +- Making it arch specific due to missing dependencies in PPC (as per + https://fedoraproject.org/wiki/Packaging:Guidelines#BuildRequires) + * Wed Mar 11 2015 Jorge A Gallegos - 2.0.9-1 - EPEL 6 and EPEL 7 compatible - Plugins not compatible with epel 6 are systemd, go, python3 based, ruby19 based, gridfs and tuntap From bee031cd4e24e5ef44646f8aa93c456cbab5c9f8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 13 Mar 2015 09:51:17 -0700 Subject: [PATCH 154/427] Rebuilding because I am dumb. --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 82ddc68..0a99737 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -60,7 +60,7 @@ Name: uwsgi Version: 2.0.9 -Release: 2 +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1447,6 +1447,9 @@ fi %changelog +* Fri Mar 13 2015 Jorge A Gallegos - 2.0.9-3 +- Adding missing dist tag, have no clue at what point this got dropped :( + * Thu Mar 12 2015 Jorge A Gallegos - 2.0.9-2 - Making it arch specific due to missing dependencies in PPC (as per https://fedoraproject.org/wiki/Packaging:Guidelines#BuildRequires) From 03f9a7ac4c185fc38a1fc5ed8d792e555082b364 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 14 Apr 2015 08:39:23 +0200 Subject: [PATCH 155/427] Fix glibc and MongoDB compatibility. --- uwsgi.spec | 12 +- uwsgi_fix_glibc_compatibility.patch | 11 ++ uwsgi_fix_mongodb.patch | 269 ++++++++++++++++++++++++++++ 3 files changed, 291 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_glibc_compatibility.patch create mode 100644 uwsgi_fix_mongodb.patch diff --git a/uwsgi.spec b/uwsgi.spec index 0a99737..f83fcfc 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -60,7 +60,7 @@ Name: uwsgi Version: 2.0.9 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -77,6 +77,11 @@ Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch +# https://github.com/unbit/uwsgi/issues/883 +# https://sourceware.org/bugzilla/show_bug.cgi?id=17523 +Patch4: uwsgi_fix_glibc_compatibility.patch +# https://github.com/unbit/uwsgi/issues/882 +Patch5: uwsgi_fix_mongodb.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} @@ -966,6 +971,8 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build %if %{with mongodblibs} @@ -1447,6 +1454,9 @@ fi %changelog +* Tue Apr 14 2015 Vít Ondruch - 2.0.9-4 +- Fix glibc and MongoDB compatibility. + * Fri Mar 13 2015 Jorge A Gallegos - 2.0.9-3 - Adding missing dist tag, have no clue at what point this got dropped :( diff --git a/uwsgi_fix_glibc_compatibility.patch b/uwsgi_fix_glibc_compatibility.patch new file mode 100644 index 0000000..c8d27ff --- /dev/null +++ b/uwsgi_fix_glibc_compatibility.patch @@ -0,0 +1,11 @@ +--- a/core/utils.c ++++ b/core/utils.c +@@ -3514,7 +3514,7 @@ + tmpdir = "/tmp"; + } + #ifdef O_TMPFILE +- fd = open(tmpdir, O_TMPFILE | O_RDWR); ++ fd = open(tmpdir, O_TMPFILE | O_RDWR, S_IRUSR | S_IWUSR); + if (fd >= 0) { + return fd; + } diff --git a/uwsgi_fix_mongodb.patch b/uwsgi_fix_mongodb.patch new file mode 100644 index 0000000..8b7b366 --- /dev/null +++ b/uwsgi_fix_mongodb.patch @@ -0,0 +1,269 @@ +From 83752e472c35632174534763dffd312fc120a429 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= + =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= + +Date: Fri, 10 Apr 2015 22:56:59 +0400 +Subject: [PATCH 1/3] Updated GridFS plugin to work with legacy + mongo-cxx-driver version 1.0.0 + +--- + plugins/gridfs/gridfs.cc | 53 +++++++++++++++++++++++++++++++++---------- + plugins/gridfs/uwsgiplugin.py | 7 +++--- + 2 files changed, 45 insertions(+), 15 deletions(-) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index d11451a..81ff0d9 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -1,3 +1,7 @@ ++#include ++#include ++#include ++ + #include + + #include +@@ -7,6 +11,7 @@ struct uwsgi_gridfs_mountpoint { + char *mountpoint; + uint16_t mountpoint_len; + char *server; ++ char *replica; + char *db; + char *timeout_str; + int timeout; +@@ -21,6 +26,7 @@ struct uwsgi_gridfs_mountpoint { + uint16_t prefix_len; + char *username; + char *password; ++ std::vector servers; + }; + + struct uwsgi_gridfs { +@@ -38,33 +44,44 @@ extern struct uwsgi_server uwsgi; + extern struct uwsgi_plugin gridfs_plugin; + + static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_mountpoint *ugm, char *itemname, int need_free) { +- + try { +- mongo::scoped_ptr conn( mongo::ScopedDbConnection::getScopedDbConnection(ugm->server, ugm->timeout) ); ++ std::unique_ptr conn; ++ ++ if (ugm->replica) { ++ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); ++ dynamic_cast(conn.get())->connect(); ++ } ++ else { ++ conn = std::unique_ptr (new mongo::DBClientConnection()); ++ dynamic_cast(conn.get())->connect(ugm->server); ++ } ++ + try { + if (ugm->username && ugm->password) { + std::string errmsg; +- if ((*conn).conn().auth(ugm->db, ugm->username, ugm->password, errmsg)) { ++ if (!conn->auth(ugm->db, ugm->username, ugm->password, errmsg)) { + uwsgi_log("[uwsgi-gridfs]: %s\n", errmsg.c_str()); +- (*conn).done(); + uwsgi_403(wsgi_req); + return; + } + } +- mongo::GridFS gridfs((*conn).conn(), ugm->db); +- mongo::GridFile gfile = gridfs.findFile(itemname); ++ mongo::GridFS gridfs((*conn.get()), ugm->db); ++ mongo::GridFile gfile = gridfs.findFileByName(itemname); ++ + if (need_free) { + free(itemname); + itemname = NULL; + } ++ + if (!gfile.exists()) { +- (*conn).done(); + uwsgi_404(wsgi_req); + return; + } ++ + uwsgi_response_prepare_headers(wsgi_req, (char *)"200 OK", 6); + // first get the content_type (if possibile) + std::string filename = gfile.getFilename(); ++ + if (!ugm->no_mime) { + size_t mime_type_len = 0; + char *mime_type = uwsgi_get_mime_type((char *)filename.c_str(), filename.length(), &mime_type_len); +@@ -72,11 +89,13 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + uwsgi_response_add_content_type(wsgi_req, mime_type, mime_type_len); + } + } ++ + if (ugm->orig_filename) { + char *filename_header = uwsgi_concat3((char *)"inline; filename=\"", (char *)filename.c_str(), (char *)"\""); + uwsgi_response_add_header(wsgi_req, (char *)"Content-Disposition", 19, filename_header, 19 + filename.length()); + free(filename_header); + } ++ + uwsgi_response_add_content_length(wsgi_req, gfile.getContentLength()); + + char http_last_modified[49]; +@@ -90,7 +109,7 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + char *etag = uwsgi_concat3((char *)"\"", (char *)g_md5.c_str(), (char *)"\""); + uwsgi_response_add_header(wsgi_req, (char *)"ETag", 4, etag, 2+g_md5.length()); + free(etag); +- } ++ } + } + + if (ugm->md5) { +@@ -106,22 +125,20 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + int i; + for(i=0;i +Date: Fri, 10 Apr 2015 23:07:41 +0400 +Subject: [PATCH 2/3] Fixed server list parsing + +--- + plugins/gridfs/gridfs.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index 81ff0d9..f58d976 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -211,6 +211,10 @@ static struct uwsgi_gridfs_mountpoint *uwsgi_gridfs_add_mountpoint(char *arg, si + ugm->servers.push_back(mongo::HostAndPort(buffer.substr(0, pos))); + buffer.erase(0, pos + 1); + } ++ ++ if (!ugm->servers.size()) { ++ ugm->servers.push_back(mongo::HostAndPort(ugm->server)); ++ } + } + + return ugm; +-- +2.1.0 + + +From a870dbfb0dc4268cbcecf573765338ec5a52f195 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= + =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= + +Date: Fri, 10 Apr 2015 23:38:38 +0400 +Subject: [PATCH 3/3] Passing timeout argument to MongoDB connection + +--- + plugins/gridfs/gridfs.cc | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index f58d976..5f7c4ba 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -48,14 +48,14 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + std::unique_ptr conn; + + if (ugm->replica) { +- conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); ++ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers, ugm->timeout)); + dynamic_cast(conn.get())->connect(); + } + else { +- conn = std::unique_ptr (new mongo::DBClientConnection()); ++ conn = std::unique_ptr (new mongo::DBClientConnection(true, 0, ugm->timeout)); + dynamic_cast(conn.get())->connect(ugm->server); + } +- ++ + try { + if (ugm->username && ugm->password) { + std::string errmsg; +-- +2.1.0 + From 9bad5ce0c912aa28230c9a6aae3a9a73304e4a7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 14 Apr 2015 08:39:23 +0200 Subject: [PATCH 156/427] Fix glibc and MongoDB compatibility. --- uwsgi.spec | 12 +- uwsgi_fix_glibc_compatibility.patch | 11 ++ uwsgi_fix_mongodb.patch | 269 ++++++++++++++++++++++++++++ 3 files changed, 291 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_glibc_compatibility.patch create mode 100644 uwsgi_fix_mongodb.patch diff --git a/uwsgi.spec b/uwsgi.spec index 0a99737..f83fcfc 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -60,7 +60,7 @@ Name: uwsgi Version: 2.0.9 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -77,6 +77,11 @@ Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch +# https://github.com/unbit/uwsgi/issues/883 +# https://sourceware.org/bugzilla/show_bug.cgi?id=17523 +Patch4: uwsgi_fix_glibc_compatibility.patch +# https://github.com/unbit/uwsgi/issues/882 +Patch5: uwsgi_fix_mongodb.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} @@ -966,6 +971,8 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build %if %{with mongodblibs} @@ -1447,6 +1454,9 @@ fi %changelog +* Tue Apr 14 2015 Vít Ondruch - 2.0.9-4 +- Fix glibc and MongoDB compatibility. + * Fri Mar 13 2015 Jorge A Gallegos - 2.0.9-3 - Adding missing dist tag, have no clue at what point this got dropped :( diff --git a/uwsgi_fix_glibc_compatibility.patch b/uwsgi_fix_glibc_compatibility.patch new file mode 100644 index 0000000..c8d27ff --- /dev/null +++ b/uwsgi_fix_glibc_compatibility.patch @@ -0,0 +1,11 @@ +--- a/core/utils.c ++++ b/core/utils.c +@@ -3514,7 +3514,7 @@ + tmpdir = "/tmp"; + } + #ifdef O_TMPFILE +- fd = open(tmpdir, O_TMPFILE | O_RDWR); ++ fd = open(tmpdir, O_TMPFILE | O_RDWR, S_IRUSR | S_IWUSR); + if (fd >= 0) { + return fd; + } diff --git a/uwsgi_fix_mongodb.patch b/uwsgi_fix_mongodb.patch new file mode 100644 index 0000000..8b7b366 --- /dev/null +++ b/uwsgi_fix_mongodb.patch @@ -0,0 +1,269 @@ +From 83752e472c35632174534763dffd312fc120a429 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= + =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= + +Date: Fri, 10 Apr 2015 22:56:59 +0400 +Subject: [PATCH 1/3] Updated GridFS plugin to work with legacy + mongo-cxx-driver version 1.0.0 + +--- + plugins/gridfs/gridfs.cc | 53 +++++++++++++++++++++++++++++++++---------- + plugins/gridfs/uwsgiplugin.py | 7 +++--- + 2 files changed, 45 insertions(+), 15 deletions(-) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index d11451a..81ff0d9 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -1,3 +1,7 @@ ++#include ++#include ++#include ++ + #include + + #include +@@ -7,6 +11,7 @@ struct uwsgi_gridfs_mountpoint { + char *mountpoint; + uint16_t mountpoint_len; + char *server; ++ char *replica; + char *db; + char *timeout_str; + int timeout; +@@ -21,6 +26,7 @@ struct uwsgi_gridfs_mountpoint { + uint16_t prefix_len; + char *username; + char *password; ++ std::vector servers; + }; + + struct uwsgi_gridfs { +@@ -38,33 +44,44 @@ extern struct uwsgi_server uwsgi; + extern struct uwsgi_plugin gridfs_plugin; + + static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_mountpoint *ugm, char *itemname, int need_free) { +- + try { +- mongo::scoped_ptr conn( mongo::ScopedDbConnection::getScopedDbConnection(ugm->server, ugm->timeout) ); ++ std::unique_ptr conn; ++ ++ if (ugm->replica) { ++ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); ++ dynamic_cast(conn.get())->connect(); ++ } ++ else { ++ conn = std::unique_ptr (new mongo::DBClientConnection()); ++ dynamic_cast(conn.get())->connect(ugm->server); ++ } ++ + try { + if (ugm->username && ugm->password) { + std::string errmsg; +- if ((*conn).conn().auth(ugm->db, ugm->username, ugm->password, errmsg)) { ++ if (!conn->auth(ugm->db, ugm->username, ugm->password, errmsg)) { + uwsgi_log("[uwsgi-gridfs]: %s\n", errmsg.c_str()); +- (*conn).done(); + uwsgi_403(wsgi_req); + return; + } + } +- mongo::GridFS gridfs((*conn).conn(), ugm->db); +- mongo::GridFile gfile = gridfs.findFile(itemname); ++ mongo::GridFS gridfs((*conn.get()), ugm->db); ++ mongo::GridFile gfile = gridfs.findFileByName(itemname); ++ + if (need_free) { + free(itemname); + itemname = NULL; + } ++ + if (!gfile.exists()) { +- (*conn).done(); + uwsgi_404(wsgi_req); + return; + } ++ + uwsgi_response_prepare_headers(wsgi_req, (char *)"200 OK", 6); + // first get the content_type (if possibile) + std::string filename = gfile.getFilename(); ++ + if (!ugm->no_mime) { + size_t mime_type_len = 0; + char *mime_type = uwsgi_get_mime_type((char *)filename.c_str(), filename.length(), &mime_type_len); +@@ -72,11 +89,13 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + uwsgi_response_add_content_type(wsgi_req, mime_type, mime_type_len); + } + } ++ + if (ugm->orig_filename) { + char *filename_header = uwsgi_concat3((char *)"inline; filename=\"", (char *)filename.c_str(), (char *)"\""); + uwsgi_response_add_header(wsgi_req, (char *)"Content-Disposition", 19, filename_header, 19 + filename.length()); + free(filename_header); + } ++ + uwsgi_response_add_content_length(wsgi_req, gfile.getContentLength()); + + char http_last_modified[49]; +@@ -90,7 +109,7 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + char *etag = uwsgi_concat3((char *)"\"", (char *)g_md5.c_str(), (char *)"\""); + uwsgi_response_add_header(wsgi_req, (char *)"ETag", 4, etag, 2+g_md5.length()); + free(etag); +- } ++ } + } + + if (ugm->md5) { +@@ -106,22 +125,20 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + int i; + for(i=0;i +Date: Fri, 10 Apr 2015 23:07:41 +0400 +Subject: [PATCH 2/3] Fixed server list parsing + +--- + plugins/gridfs/gridfs.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index 81ff0d9..f58d976 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -211,6 +211,10 @@ static struct uwsgi_gridfs_mountpoint *uwsgi_gridfs_add_mountpoint(char *arg, si + ugm->servers.push_back(mongo::HostAndPort(buffer.substr(0, pos))); + buffer.erase(0, pos + 1); + } ++ ++ if (!ugm->servers.size()) { ++ ugm->servers.push_back(mongo::HostAndPort(ugm->server)); ++ } + } + + return ugm; +-- +2.1.0 + + +From a870dbfb0dc4268cbcecf573765338ec5a52f195 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= + =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= + +Date: Fri, 10 Apr 2015 23:38:38 +0400 +Subject: [PATCH 3/3] Passing timeout argument to MongoDB connection + +--- + plugins/gridfs/gridfs.cc | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index f58d976..5f7c4ba 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -48,14 +48,14 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + std::unique_ptr conn; + + if (ugm->replica) { +- conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); ++ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers, ugm->timeout)); + dynamic_cast(conn.get())->connect(); + } + else { +- conn = std::unique_ptr (new mongo::DBClientConnection()); ++ conn = std::unique_ptr (new mongo::DBClientConnection(true, 0, ugm->timeout)); + dynamic_cast(conn.get())->connect(ugm->server); + } +- ++ + try { + if (ugm->username && ugm->password) { + std::string errmsg; +-- +2.1.0 + From f7f790c49747a3868ecd0b83256a97c619ee79cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Tue, 21 Apr 2015 13:33:15 +0200 Subject: [PATCH 157/427] - conditionalize various subpackages depending on architectures (patch by Jakub Cajka) --- uwsgi-ppc64le-java.patch | 12 ++++++ uwsgi.spec | 92 +++++++++++++++++++++++++++++++++++++--- 2 files changed, 97 insertions(+), 7 deletions(-) create mode 100644 uwsgi-ppc64le-java.patch diff --git a/uwsgi-ppc64le-java.patch b/uwsgi-ppc64le-java.patch new file mode 100644 index 0000000..54e81d1 --- /dev/null +++ b/uwsgi-ppc64le-java.patch @@ -0,0 +1,12 @@ +diff -up uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py.ppc64le uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py +--- uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py.ppc64le 2015-04-14 13:18:25.042451636 +0200 ++++ uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py 2015-04-14 13:18:57.590565389 +0200 +@@ -19,6 +19,8 @@ elif arch in ('x86_64',): + arch = 'amd64' + elif arch.startswith('arm'): + arch = 'arm' ++elif arch in ('ppc64le',): ++ arch = 'ppc64' + + # try to detect the JVM + if operating_system == 'darwin': diff --git a/uwsgi.spec b/uwsgi.spec index f83fcfc..7dc543a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -16,14 +16,38 @@ %bcond_without go %bcond_without python3 %bcond_without ruby19 -%bcond_without gridfs %bcond_without tuntap %bcond_without zeromq %bcond_without greenlet %bcond_without perlcoro %bcond_without glusterfs +#mono +%ifnarch %{mono_arches} +%bcond_with mono +%else +%bcond_without mono +%endif +# mongodblibs +# mongodb in little endian only, but also requires v8 +%ifnarch %{ix86} x86_64 %{arm} +%bcond_with mongodblibs +%else %bcond_without mongodblibs %endif +# v8 +%ifnarch %{ix86} x86_64 %{arm} +%bcond_with v8 +%else +%bcond_without v8 +%endif +#mongodblibs dependency +%if %{without mongodblibs} +%bcond_with gridfs +%else +%bcond_without gridfs +%endif +#Fedora endif +%endif # Conditionally disable some things in epel6 %if 0%{?rhel} == 6 @@ -60,12 +84,11 @@ Name: uwsgi Version: 2.0.9 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi -ExclusiveArch: %{ix86} x86_64 %{arm} Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service @@ -82,6 +105,8 @@ Patch3: uwsgi_fix_lua.patch Patch4: uwsgi_fix_glibc_compatibility.patch # https://github.com/unbit/uwsgi/issues/882 Patch5: uwsgi_fix_mongodb.patch +# Fix java/jvm include path on ppc64le +Patch6: uwsgi-ppc64le-java.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} @@ -99,6 +124,9 @@ BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel BuildRequires: gloox-devel, libstdc++-devel +BuildRequires: GeoIP-devel, libevent-devel, zlib-devel +BuildRequires: openldap-devel, boost-devel +BuildRequires: libattr-devel, libxslt-devel %if %{with perlcoro} BuildRequires: perl-Coro %endif @@ -108,13 +136,19 @@ BuildRequires: zeromq-devel %if %{with go} BuildRequires: libgo-devel, gcc-go %endif -BuildRequires: GeoIP-devel, libevent-devel, zlib-devel -BuildRequires: mono-devel, mono-web, openldap-devel, v8-devel -BuildRequires: libmongodb-devel, boost-devel -BuildRequires: libattr-devel, libxslt-devel %if %{with systemd} BuildRequires: systemd-devel, systemd-units %endif +%if %{with mono} +BuildRequires: mono-devel, mono-web +%endif +%if %{with v8} +BuildRequires: v8-devel +%endif +%if %{with mongodblibs} +BuildRequires: libmongodb-devel +%endif + Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -180,12 +214,14 @@ Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-file This package contains the stats_pusher_file plugin for uWSGI +%if %{with mongodblibs} %package -n %{name}-stats-pusher-mongodb Summary: uWSGI - MongoDB Stats Pusher for uWSGI Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-mongodb This package contains the stats_pusher_mongodb plugin for uWSGI +%endif %package -n %{name}-stats-pusher-socket Summary: uWSGI - Socket Stats Pusher for uWSGI @@ -312,6 +348,7 @@ Requires: %{name}-plugin-common, zlib %description -n %{name}-logger-graylog2 This package contains the graylog2 logger plugin for uWSGI +%if %{with mongodblibs} %package -n %{name}-logger-mongodb Summary: uWSGI - mongodblog logger plugin Group: System Environment/Daemons @@ -321,6 +358,7 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-mongodb This package contains the mongodblog logger plugin for uWSGI +%endif %package -n %{name}-logger-pipe Summary: uWSGI - logpipe logger plugin @@ -502,6 +540,7 @@ Requires: python-greenlet, %{name}-plugin-common This package contains the python greenlet plugin for uWSGI %endif +%if %{with gridfs} %package -n %{name}-plugin-gridfs Summary: uWSGI - Plugin for GridFS support Group: System Environment/Daemons @@ -509,6 +548,7 @@ Requires: %{name}-plugin-common, libmongodb %description -n %{name}-plugin-gridfs This package contains the gridfs plugin for uWSGI +%endif %package -n %{name}-plugin-jvm Summary: uWSGI - Plugin for JVM support @@ -552,6 +592,7 @@ Requires: %{name}-plugin-common, zeromq This package contains the mongrel2 plugin for uWSGI %endif +%if %{with mono} %package -n %{name}-plugin-mono Summary: uWSGI - Plugin for Mono / .NET support Group: System Environment/Daemons @@ -559,6 +600,7 @@ Requires: %{name}-plugin-common, mono-web %description -n %{name}-plugin-mono This package contains the mono plugin for uWSGI +%endif %package -n %{name}-plugin-nagios Summary: uWSGI - Plugin for Nagios support @@ -712,6 +754,7 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-ugreen This package contains the uGreen plugin for uWSGI +%if %{with v8} %package -n %{name}-plugin-v8 Summary: uWSGI - Plugin for v8 support Group: System Environment/Daemons @@ -719,6 +762,7 @@ Requires: %{name}-plugin-common, v8 %description -n %{name}-plugin-v8 This package contains the v8 plugin for uWSGI +%endif %package -n %{name}-plugin-webdav Summary: uWSGI - Plugin for WebDAV support @@ -972,7 +1016,26 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch2 -p1 %patch3 -p1 %patch4 -p1 +%if 0%{?fedora} >= 22 %patch5 -p1 +%endif +%patch6 -p1 -b .ppc64le + +#disable plug-ins +%if %{without mongodblibs} +sed -in "s/mongodblog, //" buildconf/fedora.ini +sed -in "s/stats_pusher_mongodb, //" buildconf/fedora.ini +%endif +%if %{without v8} +sed -in "s/v8, //" buildconf/fedora.ini +%endif +%if %{without gridfs} +sed -in "s/gridfs, //" buildconf/fedora.ini +%endif +%if %{without mono} +sed -in "s/mono, //" buildconf/fedora.ini +%endif + %build %if %{with mongodblibs} @@ -1028,7 +1091,9 @@ mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}%{_httpd_moddir} +%if %{with mono} mkdir -p %{buildroot}/usr/lib/mono/gac/ +%endif mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG @@ -1038,7 +1103,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} +%if %{with mono} gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib +%endif %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %if %{with systemd} %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service @@ -1139,8 +1206,10 @@ fi %files -n %{name}-stats-pusher-file %{_libdir}/%{name}/stats_pusher_file_plugin.so +%if %{with mongodblibs} %files -n %{name}-stats-pusher-mongodb %{_libdir}/%{name}/stats_pusher_mongodb_plugin.so +%endif %files -n %{name}-stats-pusher-socket %{_libdir}/%{name}/stats_pusher_socket_plugin.so @@ -1193,8 +1262,10 @@ fi %files -n %{name}-logger-graylog2 %{_libdir}/%{name}/graylog2_plugin.so +%if %{with mongodblibs} %files -n %{name}-logger-mongodb %{_libdir}/%{name}/mongodblog_plugin.so +%endif %files -n %{name}-logger-pipe %{_libdir}/%{name}/logpipe_plugin.so @@ -1295,12 +1366,14 @@ fi %{_libdir}/%{name}/mongrel2_plugin.so %endif +%if %{with mono} %files -n %{name}-plugin-mono %dir /usr/lib/mono/%{name}/ %dir /usr/lib/mono/gac/%{name}/ %{_libdir}/%{name}/mono_plugin.so /usr/lib/mono/%{name}/*.dll /usr/lib/mono/gac/%{name}/*/*.dll +%endif %files -n %{name}-plugin-nagios %{_libdir}/%{name}/nagios_plugin.so @@ -1365,8 +1438,10 @@ fi %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so +%if %{with v8} %files -n %{name}-plugin-v8 %{_libdir}/%{name}/v8_plugin.so +%endif %files -n %{name}-plugin-webdav %{_libdir}/%{name}/webdav_plugin.so @@ -1454,6 +1529,9 @@ fi %changelog +* Fri Apr 17 2015 Dan Horák - 2.0.9-5 +- conditionalize various subpackages depending on architectures (patch by Jakub Cajka) + * Tue Apr 14 2015 Vít Ondruch - 2.0.9-4 - Fix glibc and MongoDB compatibility. From 6a707d410aa0f94595ff0124f70d85e6c57d29ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Tue, 21 Apr 2015 13:33:15 +0200 Subject: [PATCH 158/427] - conditionalize various subpackages depending on architectures (patch by Jakub Cajka) - #1211616 --- uwsgi-ppc64le-java.patch | 12 ++++++ uwsgi.spec | 92 +++++++++++++++++++++++++++++++++++++--- 2 files changed, 97 insertions(+), 7 deletions(-) create mode 100644 uwsgi-ppc64le-java.patch diff --git a/uwsgi-ppc64le-java.patch b/uwsgi-ppc64le-java.patch new file mode 100644 index 0000000..54e81d1 --- /dev/null +++ b/uwsgi-ppc64le-java.patch @@ -0,0 +1,12 @@ +diff -up uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py.ppc64le uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py +--- uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py.ppc64le 2015-04-14 13:18:25.042451636 +0200 ++++ uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py 2015-04-14 13:18:57.590565389 +0200 +@@ -19,6 +19,8 @@ elif arch in ('x86_64',): + arch = 'amd64' + elif arch.startswith('arm'): + arch = 'arm' ++elif arch in ('ppc64le',): ++ arch = 'ppc64' + + # try to detect the JVM + if operating_system == 'darwin': diff --git a/uwsgi.spec b/uwsgi.spec index f83fcfc..06e7695 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -16,14 +16,38 @@ %bcond_without go %bcond_without python3 %bcond_without ruby19 -%bcond_without gridfs %bcond_without tuntap %bcond_without zeromq %bcond_without greenlet %bcond_without perlcoro %bcond_without glusterfs +#mono +%ifnarch %{mono_arches} +%bcond_with mono +%else +%bcond_without mono +%endif +# mongodblibs +# mongodb in little endian only, but also requires v8 +%ifnarch %{ix86} x86_64 %{arm} +%bcond_with mongodblibs +%else %bcond_without mongodblibs %endif +# v8 +%ifnarch %{ix86} x86_64 %{arm} +%bcond_with v8 +%else +%bcond_without v8 +%endif +#mongodblibs dependency +%if %{without mongodblibs} +%bcond_with gridfs +%else +%bcond_without gridfs +%endif +#Fedora endif +%endif # Conditionally disable some things in epel6 %if 0%{?rhel} == 6 @@ -60,12 +84,11 @@ Name: uwsgi Version: 2.0.9 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi -ExclusiveArch: %{ix86} x86_64 %{arm} Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service @@ -82,6 +105,8 @@ Patch3: uwsgi_fix_lua.patch Patch4: uwsgi_fix_glibc_compatibility.patch # https://github.com/unbit/uwsgi/issues/882 Patch5: uwsgi_fix_mongodb.patch +# Fix java/jvm include path on ppc64le +Patch6: uwsgi-ppc64le-java.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} @@ -99,6 +124,9 @@ BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel BuildRequires: gloox-devel, libstdc++-devel +BuildRequires: GeoIP-devel, libevent-devel, zlib-devel +BuildRequires: openldap-devel, boost-devel +BuildRequires: libattr-devel, libxslt-devel %if %{with perlcoro} BuildRequires: perl-Coro %endif @@ -108,13 +136,19 @@ BuildRequires: zeromq-devel %if %{with go} BuildRequires: libgo-devel, gcc-go %endif -BuildRequires: GeoIP-devel, libevent-devel, zlib-devel -BuildRequires: mono-devel, mono-web, openldap-devel, v8-devel -BuildRequires: libmongodb-devel, boost-devel -BuildRequires: libattr-devel, libxslt-devel %if %{with systemd} BuildRequires: systemd-devel, systemd-units %endif +%if %{with mono} +BuildRequires: mono-devel, mono-web +%endif +%if %{with v8} +BuildRequires: v8-devel +%endif +%if %{with mongodblibs} +BuildRequires: libmongodb-devel +%endif + Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -180,12 +214,14 @@ Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-file This package contains the stats_pusher_file plugin for uWSGI +%if %{with mongodblibs} %package -n %{name}-stats-pusher-mongodb Summary: uWSGI - MongoDB Stats Pusher for uWSGI Requires: %{name}-plugin-common %description -n %{name}-stats-pusher-mongodb This package contains the stats_pusher_mongodb plugin for uWSGI +%endif %package -n %{name}-stats-pusher-socket Summary: uWSGI - Socket Stats Pusher for uWSGI @@ -312,6 +348,7 @@ Requires: %{name}-plugin-common, zlib %description -n %{name}-logger-graylog2 This package contains the graylog2 logger plugin for uWSGI +%if %{with mongodblibs} %package -n %{name}-logger-mongodb Summary: uWSGI - mongodblog logger plugin Group: System Environment/Daemons @@ -321,6 +358,7 @@ Provides: %{name}-loggers = %{version}-%{release} %description -n %{name}-logger-mongodb This package contains the mongodblog logger plugin for uWSGI +%endif %package -n %{name}-logger-pipe Summary: uWSGI - logpipe logger plugin @@ -502,6 +540,7 @@ Requires: python-greenlet, %{name}-plugin-common This package contains the python greenlet plugin for uWSGI %endif +%if %{with gridfs} %package -n %{name}-plugin-gridfs Summary: uWSGI - Plugin for GridFS support Group: System Environment/Daemons @@ -509,6 +548,7 @@ Requires: %{name}-plugin-common, libmongodb %description -n %{name}-plugin-gridfs This package contains the gridfs plugin for uWSGI +%endif %package -n %{name}-plugin-jvm Summary: uWSGI - Plugin for JVM support @@ -552,6 +592,7 @@ Requires: %{name}-plugin-common, zeromq This package contains the mongrel2 plugin for uWSGI %endif +%if %{with mono} %package -n %{name}-plugin-mono Summary: uWSGI - Plugin for Mono / .NET support Group: System Environment/Daemons @@ -559,6 +600,7 @@ Requires: %{name}-plugin-common, mono-web %description -n %{name}-plugin-mono This package contains the mono plugin for uWSGI +%endif %package -n %{name}-plugin-nagios Summary: uWSGI - Plugin for Nagios support @@ -712,6 +754,7 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-ugreen This package contains the uGreen plugin for uWSGI +%if %{with v8} %package -n %{name}-plugin-v8 Summary: uWSGI - Plugin for v8 support Group: System Environment/Daemons @@ -719,6 +762,7 @@ Requires: %{name}-plugin-common, v8 %description -n %{name}-plugin-v8 This package contains the v8 plugin for uWSGI +%endif %package -n %{name}-plugin-webdav Summary: uWSGI - Plugin for WebDAV support @@ -972,7 +1016,26 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch2 -p1 %patch3 -p1 %patch4 -p1 +%if 0%{?fedora} >= 22 %patch5 -p1 +%endif +%patch6 -p1 -b .ppc64le + +#disable plug-ins +%if %{without mongodblibs} +sed -in "s/mongodblog, //" buildconf/fedora.ini +sed -in "s/stats_pusher_mongodb, //" buildconf/fedora.ini +%endif +%if %{without v8} +sed -in "s/v8, //" buildconf/fedora.ini +%endif +%if %{without gridfs} +sed -in "s/gridfs, //" buildconf/fedora.ini +%endif +%if %{without mono} +sed -in "s/mono, //" buildconf/fedora.ini +%endif + %build %if %{with mongodblibs} @@ -1028,7 +1091,9 @@ mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}%{_httpd_moddir} +%if %{with mono} mkdir -p %{buildroot}/usr/lib/mono/gac/ +%endif mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG @@ -1038,7 +1103,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} +%if %{with mono} gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib +%endif %{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini %if %{with systemd} %{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service @@ -1139,8 +1206,10 @@ fi %files -n %{name}-stats-pusher-file %{_libdir}/%{name}/stats_pusher_file_plugin.so +%if %{with mongodblibs} %files -n %{name}-stats-pusher-mongodb %{_libdir}/%{name}/stats_pusher_mongodb_plugin.so +%endif %files -n %{name}-stats-pusher-socket %{_libdir}/%{name}/stats_pusher_socket_plugin.so @@ -1193,8 +1262,10 @@ fi %files -n %{name}-logger-graylog2 %{_libdir}/%{name}/graylog2_plugin.so +%if %{with mongodblibs} %files -n %{name}-logger-mongodb %{_libdir}/%{name}/mongodblog_plugin.so +%endif %files -n %{name}-logger-pipe %{_libdir}/%{name}/logpipe_plugin.so @@ -1295,12 +1366,14 @@ fi %{_libdir}/%{name}/mongrel2_plugin.so %endif +%if %{with mono} %files -n %{name}-plugin-mono %dir /usr/lib/mono/%{name}/ %dir /usr/lib/mono/gac/%{name}/ %{_libdir}/%{name}/mono_plugin.so /usr/lib/mono/%{name}/*.dll /usr/lib/mono/gac/%{name}/*/*.dll +%endif %files -n %{name}-plugin-nagios %{_libdir}/%{name}/nagios_plugin.so @@ -1365,8 +1438,10 @@ fi %files -n %{name}-plugin-ugreen %{_libdir}/%{name}/ugreen_plugin.so +%if %{with v8} %files -n %{name}-plugin-v8 %{_libdir}/%{name}/v8_plugin.so +%endif %files -n %{name}-plugin-webdav %{_libdir}/%{name}/webdav_plugin.so @@ -1454,6 +1529,9 @@ fi %changelog +* Fri Apr 17 2015 Dan Horák - 2.0.9-5 +- conditionalize various subpackages depending on architectures (patch by Jakub Cajka) - #1211616 + * Tue Apr 14 2015 Vít Ondruch - 2.0.9-4 - Fix glibc and MongoDB compatibility. From 00aa829193a6f86668053d5dc51076b8e7e81429 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Apr 2015 09:29:27 -0700 Subject: [PATCH 159/427] Whitespace cleanup --- uwsgi.spec | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 06e7695..8fbce14 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -86,7 +86,7 @@ Name: uwsgi Version: 2.0.9 Release: 5%{?dist} Summary: Fast, self-healing, application container server -Group: System Environment/Daemons +Group: System Environment/Daemons License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz @@ -169,13 +169,13 @@ Requires(preun): initscripts uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly application container server. Born as a WSGI-only server, over time it has evolved in a complete stack for networked/clustered web applications, -implementing message/object passing, caching, RPC and process management. +implementing message/object passing, caching, RPC and process management. It uses the uwsgi (all lowercase, already included by default in the Nginx and Cherokee releases) protocol for all the networking/interprocess communications. Can be run in preforking mode, threaded, asynchronous/evented and supports various form of green threads/co-routine (like uGreen and Fiber). Sysadmin will love it as it can be configured via -command line, environment variables, xml, .ini and yaml files and via LDAP. +command line, environment variables, xml, .ini and yaml files and via LDAP. Being fully modular can use tons of different technology on top of the same core. @@ -533,7 +533,7 @@ This package contains the glusterfs plugin for uWSGI %if %{with greenlet} %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: python-greenlet, %{name}-plugin-common %description -n %{name}-plugin-greenlet @@ -568,7 +568,7 @@ This package contains the jwsgi plugin for uWSGI %package -n %{name}-plugin-ldap Summary: uWSGI - Plugin for LDAP support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: %{name}-plugin-common, openldap %description -n %{name}-plugin-ldap @@ -576,7 +576,7 @@ This package contains the ldap plugin for uWSGI %package -n %{name}-plugin-lua Summary: uWSGI - Plugin for LUA support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: lua, %{name}-plugin-common %description -n %{name}-plugin-lua @@ -585,7 +585,7 @@ This package contains the lua plugin for uWSGI %if %{with zeromq} %package -n %{name}-plugin-mongrel2 Summary: uWSGI - Plugin for Mongrel2 support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: %{name}-plugin-common, zeromq %description -n %{name}-plugin-mongrel2 @@ -652,7 +652,7 @@ This package contains the python plugin for uWSGI %package -n %{name}-plugin-python3 Summary: uWSGI - Plugin for Python 3.2 support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: python3, %{name}-plugin-common %description -n %{name}-plugin-python3 @@ -700,7 +700,7 @@ This package contains the RRD Tool plugin for uWSGI %package -n %{name}-plugin-ruby Summary: uWSGI - Plugin for Ruby support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: ruby, %{name}-plugin-common %description -n %{name}-plugin-ruby @@ -708,7 +708,7 @@ This package contains the ruby19 plugin for uWSGI %package -n %{name}-plugin-spooler Summary: uWSGI - Plugin for Remote Spooling support -Group: System Environment/Daemons +Group: System Environment/Daemons Requires: %{name}-plugin-common %description -n %{name}-plugin-spooler @@ -1128,8 +1128,8 @@ echo "Executing systemd post-install tasks" %if 0%{?systemd_post:1} %systemd_post uwsgi.service %else - if [ $1 -eq 1 ] ; then - # Initial installation + if [ $1 -eq 1 ] ; then + # Initial installation /bin/systemctl daemon-reload >/dev/null 2>&1 || : fi %endif @@ -1178,7 +1178,7 @@ fi %endif -%files +%files %{_sbindir}/%{name} %{_sysconfdir}/%{name}.ini %if %{with systemd} From d75a395424d882c0c5363dca6733326d1ba391f5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Apr 2015 09:47:05 -0700 Subject: [PATCH 160/427] There is a method to this madness, you know. --- fedora.ini | 2 +- uwsgi.spec | 27 +++++++++------------------ 2 files changed, 10 insertions(+), 19 deletions(-) diff --git a/fedora.ini b/fedora.ini index 3e6bf94..023b04a 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, lua, mongodblog, mono, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_mongodb, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, v8, webdav, xattr, xslt, zabbix, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 8fbce14..3b57ad1 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1021,27 +1021,18 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %endif %patch6 -p1 -b .ppc64le -#disable plug-ins -%if %{without mongodblibs} -sed -in "s/mongodblog, //" buildconf/fedora.ini -sed -in "s/stats_pusher_mongodb, //" buildconf/fedora.ini -%endif -%if %{without v8} -sed -in "s/v8, //" buildconf/fedora.ini -%endif -%if %{without gridfs} -sed -in "s/gridfs, //" buildconf/fedora.ini -%endif -%if %{without mono} -sed -in "s/mono, //" buildconf/fedora.ini -%endif - %build -%if %{with mongodblibs} CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini -%else -UWSGI_MONGODB_NOLIB=1 CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini +%if %{with mongodblibs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/mongodblog fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +%endif +%if %{with mono} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/mono fedora +%endif +%if %{with v8} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/v8 fedora %endif %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 From 2f1e607f282a76df92871539fcabd352ab825830 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Apr 2015 11:38:33 -0700 Subject: [PATCH 161/427] Weirdly, EL6 doesn't have perl-PSGI, EL7 doesn't have perl-Coro --- fedora.ini | 2 +- uwsgi.spec | 26 +++++++++++++++++--------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/fedora.ini b/fedora.ini index 023b04a..d39861d 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, pam, php, psgi, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, pam, php, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 3b57ad1..d8c76ed 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -19,8 +19,9 @@ %bcond_without tuntap %bcond_without zeromq %bcond_without greenlet -%bcond_without perlcoro +%bcond_without perl %bcond_without glusterfs + #mono %ifnarch %{mono_arches} %bcond_with mono @@ -59,16 +60,18 @@ %bcond_with python3 # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 +# el7 doesn't have perl-PSGI +%bcond_with perl # this fails in el not sure why %bcond_with gridfs %bcond_with tuntap %bcond_with mongodblibs %endif -# Conditionally disable some things in epel7 +# Conditionally enable/disable some things in epel7 %if 0%{?rhel} == 7 -# el7 doesn't ship with systemd -%bcond_with systemd +# el7 does have systemd +%bcond_without systemd # el7 doesn't have python3 %bcond_with python3 # el7 doesn't have zeromq @@ -76,7 +79,7 @@ # el7 doesn't have greenlet %bcond_with greenlet # el7 doesn't have perl-Coro -%bcond_with perlcoro +%bcond_with perl # this fails in el not sure why %bcond_with glusterfs %bcond_with gridfs @@ -127,7 +130,7 @@ BuildRequires: gloox-devel, libstdc++-devel BuildRequires: GeoIP-devel, libevent-devel, zlib-devel BuildRequires: openldap-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel -%if %{with perlcoro} +%if %{with perl} BuildRequires: perl-Coro %endif %if %{with zeromq} @@ -454,7 +457,7 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-carbon This package contains the Carbon plugin for uWSGI (to use in graphite) -%if %{with perlcoro} +%if %{with perl} %package -n %{name}-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons @@ -626,6 +629,7 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-php This package contains the PHP plugin for uWSGI +%if %{with perl} %package -n %{name}-plugin-psgi Summary: uWSGI - Plugin for PSGI support Group: System Environment/Daemons @@ -633,6 +637,7 @@ Requires: perl-PSGI, %{name}-plugin-common %description -n %{name}-plugin-psgi This package contains the PSGI plugin for uWSGI +%endif %package -n %{name}-plugin-pty Summary: uWSGI - Plugin for PTY support @@ -1051,8 +1056,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %if %{with tuntap} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/tuntap fedora %endif -%if %{with perlcoro} +%if %{with perl} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/coroae fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/psgi fedora %endif %if %{with zeromq} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/logzmq fedora @@ -1294,7 +1300,7 @@ fi %files -n %{name}-plugin-carbon %{_libdir}/%{name}/carbon_plugin.so -%if %{with perlcoro} +%if %{with perl} %files -n %{name}-plugin-coroae %{_libdir}/%{name}/coroae_plugin.so %endif @@ -1375,8 +1381,10 @@ fi %files -n %{name}-plugin-php %{_libdir}/%{name}/php_plugin.so +%if %{with perl} %files -n %{name}-plugin-psgi %{_libdir}/%{name}/psgi_plugin.so +%endif %files -n %{name}-plugin-pty %{_libdir}/%{name}/pty_plugin.so From c4d39effb1e50eeb878d418c654928b9af382718 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Apr 2015 11:46:24 -0700 Subject: [PATCH 162/427] Bumping release --- uwsgi.spec | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index d8c76ed..fd8f9a8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -4,7 +4,7 @@ %global releasenumber 9 # Documentation sources: -%global commit bc49905603e3f188e4e47692942a7bbeaee990c6 +%global commit 4ac8256da66fc95059c32924d467f4c7f7b2b0e7 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -86,8 +86,8 @@ %endif Name: uwsgi -Version: 2.0.9 -Release: 5%{?dist} +Version: %{majornumber}.%{minornumber}.%{releasenumber} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1528,6 +1528,12 @@ fi %changelog +* Tue Apr 21 2015 Jorge A Gallegos - 2.0.9-6 +- Reworked the conditionals in the spec file +- Updated documentation +- Disabled PSGI for epel, builds fine but requirement is missing +- Reenabled systemd for epel7, dunno how I missed that one + * Fri Apr 17 2015 Dan Horák - 2.0.9-5 - conditionalize various subpackages depending on architectures (patch by Jakub Cajka) - #1211616 From 473235164b8cb177a58c9c454a6efd7dbd8dfe7b Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Apr 2015 14:21:35 -0700 Subject: [PATCH 163/427] Updating documentation tarball --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index dbb1a7b..f26cd5c 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ /uwsgi-docs-f551708.tar.gz /uwsgi-2.0.9.tar.gz /uwsgi-docs-bc49905.tar.gz +/uwsgi-docs-4ac8256.tar.gz diff --git a/sources b/sources index 530aa5a..1514685 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ +2bcdbb7a46958d2f058434ba68850790 uwsgi-docs-4ac8256.tar.gz 44a5b044ea8416e7af310df0dea9caf8 uwsgi-2.0.9.tar.gz -0054aa2982003a3075678d4773ccef0f uwsgi-docs-bc49905.tar.gz From 3e967d3c4f3ec2989859a61683fe2eced790960e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Apr 2015 18:08:25 -0700 Subject: [PATCH 164/427] conditionally apply jvm patch --- uwsgi.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index fd8f9a8..bb39d81 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1024,7 +1024,9 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %if 0%{?fedora} >= 22 %patch5 -p1 %endif +%if 0%{?rhel} >= 7 %patch6 -p1 -b .ppc64le +%endif %build From 25115285eb605745ac05c3ae0fdf2970b874d65f Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 23 Apr 2015 08:42:27 -0700 Subject: [PATCH 165/427] Conditionally disable where java is not present The jvm, jwsgi, and ring plugins depend on java, which is not present in el6 ppc64 --- uwsgi.spec | 42 ++++++++++++++++++++++++++++++++---------- 1 file changed, 32 insertions(+), 10 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 42caaf1..95a6d18 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -21,6 +21,7 @@ %bcond_without greenlet %bcond_without perl %bcond_without glusterfs +%bcond_without java #mono %ifnarch %{mono_arches} %bcond_with mono @@ -51,6 +52,10 @@ # Conditionally disable some things in epel6 %if 0%{?rhel} == 6 +# el6 ppc64 doesn't hava java +%ifarch ppc64 +%bcond_with java +%endif # el6 doesn't ship with systemd %bcond_with systemd # el6 doesn't have go @@ -69,6 +74,8 @@ # Conditionally enable/disable some things in epel7 %if 0%{?rhel} == 7 +# el7 does have java +%bcond_without java # el7 does have systemd %bcond_without systemd # el7 doesn't have python3 @@ -552,6 +559,7 @@ Requires: %{name}-plugin-common, libmongodb This package contains the gridfs plugin for uWSGI %endif +%if %{with java} %package -n %{name}-plugin-jvm Summary: uWSGI - Plugin for JVM support Group: System Environment/Daemons @@ -567,6 +575,7 @@ Requires: %{name}-plugin-common, %{name}-plugin-jvm %description -n %{name}-plugin-jwsgi This package contains the jwsgi plugin for uWSGI +%endif %package -n %{name}-plugin-ldap Summary: uWSGI - Plugin for LDAP support @@ -678,6 +687,7 @@ Requires: %{name}-plugin-common, ruby %description -n %{name}-plugin-rbthreads This package contains the rbthreads plugin for uWSGI +%if %{with java} %package -n %{name}-plugin-ring Summary: uWSGI - Clojure/Ring request handler support plugin Group: System Environment/Daemons @@ -685,6 +695,7 @@ Requires: %{name}-plugin-common, %{name}-plugin-jvm, clojure %description -n %{name}-plugin-ring This package contains the ring plugin for uWSGI +%endif %package -n %{name}-plugin-rpc Summary: uWSGI - Plugin for RPC support @@ -1044,20 +1055,20 @@ sed -in "s/mono, //" buildconf/fedora.ini %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini -%if %{with mongodblibs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/mongodblog fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora -%endif -%if %{with mono} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/mono fedora -%endif -%if %{with v8} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/v8 fedora -%endif %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/tornado fedora tornado3 %endif +%if %{with mongodblibs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +%endif +%if %{with mono} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mono fedora +%endif +%if %{with v8} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/v8 fedora +%endif %if %{with go} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/gccgo fedora %endif @@ -1088,6 +1099,11 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %if %{with gridfs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/gridfs fedora %endif +%if %{with java} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/jvm fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/jwsgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/ring fedora +%endif %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install @@ -1114,7 +1130,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} +%if %{with java} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} +%endif %if %{with mono} gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib %endif @@ -1360,12 +1378,14 @@ fi %{_libdir}/%{name}/gridfs_plugin.so %endif +%if %{with java} %files -n %{name}-plugin-jvm %{_libdir}/%{name}/jvm_plugin.so %{_javadir}/uwsgi.jar %files -n %{name}-plugin-jwsgi %{_libdir}/%{name}/jwsgi_plugin.so +%endif %files -n %{name}-plugin-ldap %{_libdir}/%{name}/ldap_plugin.so @@ -1420,8 +1440,10 @@ fi %{_libdir}/%{name}/rbthreads_plugin.so %endif +%if %{with java} %files -n %{name}-plugin-ring %{_libdir}/%{name}/ring_plugin.so +%endif %files -n %{name}-plugin-rrdtool %{_libdir}/%{name}/rrdtool_plugin.so From 4a487add8746a5b05516fb5e02060b70a3b4e270 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 23 Apr 2015 08:54:13 -0700 Subject: [PATCH 166/427] must have missed this somehow --- uwsgi.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/uwsgi.spec b/uwsgi.spec index 95a6d18..0e3ab66 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1036,6 +1036,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %endif %if 0%{?rhel} >= 7 %patch6 -p1 -b .ppc64le +%endif #disable plug-ins %if %{without mongodblibs} From 311a51cf20df586b8271aa153cc651ff8b8519f0 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 23 Apr 2015 09:00:44 -0700 Subject: [PATCH 167/427] Add complement to conditional --- uwsgi.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 0e3ab66..c5a90bd 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -55,6 +55,8 @@ # el6 ppc64 doesn't hava java %ifarch ppc64 %bcond_with java +%else +%bcond_without java %endif # el6 doesn't ship with systemd %bcond_with systemd From 18f37987b600fd4da2ff5ffdfc6e63da7543fc30 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 23 Apr 2015 09:18:54 -0700 Subject: [PATCH 168/427] Should've removed them from the buildconf file --- fedora.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index d39861d..7b018d1 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, jvm, jwsgi, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, pam, php, pty, python, rack, rawrouter, redislog, ring, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, pam, php, pty, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool From 722ebc151503d58498ad636f603d65bd403c1214 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 23 Apr 2015 11:42:40 -0700 Subject: [PATCH 169/427] Bumping spec for release --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index c5a90bd..aed5ff2 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1568,6 +1568,9 @@ fi %changelog +* Thu Apr 23 2015 Jorge A Gallegos - 2.0.9-7 +- Disabled java related plugins (jvm, jwsgi, ring) in el6 ppc64 + * Tue Apr 21 2015 Jorge A Gallegos - 2.0.9-6 - Reworked the conditionals in the spec file - Updated documentation From c29e2ec294a2f927dcd6ea3631f24879a21d4407 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mon, 18 May 2015 21:59:35 +0100 Subject: [PATCH 170/427] Rebuild (mono4) --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index aed5ff2..920e09f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1568,6 +1568,9 @@ fi %changelog +* Mon May 18 2015 Peter Robinson 2.0.9-8 +- Rebuild (mono4) + * Thu Apr 23 2015 Jorge A Gallegos - 2.0.9-7 - Disabled java related plugins (jvm, jwsgi, ring) in el6 ppc64 From fe115c537d6a93be3fbf48ca3212d76c05749fe0 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Sat, 6 Jun 2015 18:20:50 +0200 Subject: [PATCH 171/427] Perl 5.22 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 920e09f..6c41fe4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1568,6 +1568,9 @@ fi %changelog +* Sat Jun 06 2015 Jitka Plesnikova - 2.0.9-9 +- Perl 5.22 rebuild + * Mon May 18 2015 Peter Robinson 2.0.9-8 - Rebuild (mono4) From 3ad3eb25f4895979f67ed835c802d750a0555ac0 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 19 Jun 2015 01:45:21 +0000 Subject: [PATCH 172/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6c41fe4..9cd7c66 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1568,6 +1568,9 @@ fi %changelog +* Fri Jun 19 2015 Fedora Release Engineering - 2.0.9-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Sat Jun 06 2015 Jitka Plesnikova - 2.0.9-9 - Perl 5.22 rebuild From 92fe391fa7026fb4fbf5f00b39bd6eaed3e8a32c Mon Sep 17 00:00:00 2001 From: Thomas Spura Date: Tue, 23 Jun 2015 14:37:54 +0200 Subject: [PATCH 173/427] rebuilt for new zeromq 4.1.2 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9cd7c66..8cf2197 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 10%{?dist} +Release: 11%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1568,6 +1568,9 @@ fi %changelog +* Tue Jun 23 2015 Thomas Spura - 2.0.9-11 +- rebuilt for new zeromq 4.1.2 + * Fri Jun 19 2015 Fedora Release Engineering - 2.0.9-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From e94512c76d775542839f3d2579f442b687aedc52 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 13:06:29 -0700 Subject: [PATCH 174/427] Adding sources for new version --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index f26cd5c..486ca2f 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,5 @@ /uwsgi-2.0.9.tar.gz /uwsgi-docs-bc49905.tar.gz /uwsgi-docs-4ac8256.tar.gz +/uwsgi-2.0.11.tar.gz +/uwsgi-docs-c96716d.tar.gz diff --git a/sources b/sources index 1514685..ccac721 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -2bcdbb7a46958d2f058434ba68850790 uwsgi-docs-4ac8256.tar.gz -44a5b044ea8416e7af310df0dea9caf8 uwsgi-2.0.9.tar.gz +c641966a6571d4386d607a87dfae5cb7 uwsgi-2.0.11.tar.gz +13fb0e276e330191269727eba7ef9987 uwsgi-docs-c96716d.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index 8cf2197..54fe384 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 9 +%global releasenumber 11 # Documentation sources: -%global commit 4ac8256da66fc95059c32924d467f4c7f7b2b0e7 +%global commit c96716de34fa6572c129468507c695d9adef9829 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} From 3e7925dfe494f19a013de1e5e90bfdbe448858fd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 13:08:24 -0700 Subject: [PATCH 175/427] Mark config files as %config --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 54fe384..ac8bd1e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1213,9 +1213,9 @@ fi %files %{_sbindir}/%{name} -%{_sysconfdir}/%{name}.ini +%config %{_sysconfdir}/%{name}.ini %if %{with systemd} -%{_unitdir}/%{name}.service +%config %{_unitdir}/%{name}.service %else %{_initddir}/%{name} %endif From 4651be808546ba88529f4e52311fbbe90c7bfbc8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 13:10:39 -0700 Subject: [PATCH 176/427] License is license Also getting rid of .gitignore in the docs directory --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ac8bd1e..8958d24 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1128,6 +1128,7 @@ mkdir -p %{buildroot}/usr/lib/mono/gac/ mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG +rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} @@ -1221,7 +1222,9 @@ fi %endif %dir %{_sysconfdir}/%{name}.d %dir /run/%{name} -%doc LICENSE README README.Fedora CHANGELOG +%doc README README.Fedora CHANGELOG +%{!?_licensedir:%global license %%doc} +%license LICENSE %files -n %{name}-devel %{_includedir}/%{name} From 2c93995ed495e46d30030c21cba769adcc635bca Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 13:18:07 -0700 Subject: [PATCH 177/427] Adding the dummy and notfound plugins --- fedora.ini | 2 +- uwsgi.spec | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index 7b018d1..a110f63 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,4 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, pam, php, pty, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool +plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, dummy, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, notfound, pam, php, pty, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool diff --git a/uwsgi.spec b/uwsgi.spec index 8958d24..fd47473 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -499,6 +499,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-dumbloop This package contains the dumbloop plugin for uWSGI +%package -n %{name}-plugin-dummy +Summary: uWSGI - Plugin for Dummy support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-dummy +This package contains the dummy plugin for uWSGI + %package -n %{name}-plugin-fiber Summary: uWSGI - Plugin for Ruby Fiber support Group: System Environment/Daemons @@ -623,6 +631,14 @@ Requires: %{name}-plugin-common %description -n %{name}-plugin-nagios This package contains the nagios plugin for uWSGI +%package -n %{name}-plugin-notfound +Summary: uWSGI - Plugin for notfound support +Group: System Environment/Daemons +Requires: %{name}-plugin-common + +%description -n %{name}-plugin-notfound +This package contains the notfound plugin for uWSGI + %package -n %{name}-plugin-pam Summary: uWSGI - Plugin for PAM support Group: System Environment/Daemons @@ -1353,6 +1369,9 @@ fi %files -n %{name}-plugin-dumbloop %{_libdir}/%{name}/dumbloop_plugin.so +%files -n %{name}-plugin-dummy +%{_libdir}/%{name}/dummy_plugin.so + %if %{with ruby19} %files -n %{name}-plugin-fiber %{_libdir}/%{name}/fiber_plugin.so @@ -1416,6 +1435,9 @@ fi %files -n %{name}-plugin-nagios %{_libdir}/%{name}/nagios_plugin.so +%files -n %{name}-plugin-notfound +%{_libdir}/%{name}/notfound_plugin.so + %files -n %{name}-plugin-pam %{_libdir}/%{name}/pam_plugin.so From b9388565b7115c0b29e5394541cf4ee8522f861f Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 13:18:58 -0700 Subject: [PATCH 178/427] Bumping spec version for release --- uwsgi.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index fd47473..5a1cf4b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 11%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1593,6 +1593,12 @@ fi %changelog +* Thu Jul 02 2015 Jorge A Gallegos - 2.0.11-1 +- Adding the dummy and notfound plugins (Jorge Gallegos) +- License is license (Jorge Gallegos) +- Mark config files as %config (Jorge Gallegos) +- Adding sources for new version (Jorge Gallegos) + * Tue Jun 23 2015 Thomas Spura - 2.0.9-11 - rebuilt for new zeromq 4.1.2 From 871f9b82531c34430f0e9f5211da1c563ce62239 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 14:00:17 -0700 Subject: [PATCH 179/427] uwsgi_fix_glibc_compatibility merged upstream --- uwsgi.spec | 4 ---- uwsgi_fix_glibc_compatibility.patch | 11 ----------- 2 files changed, 15 deletions(-) delete mode 100644 uwsgi_fix_glibc_compatibility.patch diff --git a/uwsgi.spec b/uwsgi.spec index 5a1cf4b..17130cd 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -111,9 +111,6 @@ Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch -# https://github.com/unbit/uwsgi/issues/883 -# https://sourceware.org/bugzilla/show_bug.cgi?id=17523 -Patch4: uwsgi_fix_glibc_compatibility.patch # https://github.com/unbit/uwsgi/issues/882 Patch5: uwsgi_fix_mongodb.patch # Fix java/jvm include path on ppc64le @@ -1048,7 +1045,6 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 -p1 %if 0%{?fedora} >= 22 %patch5 -p1 %endif diff --git a/uwsgi_fix_glibc_compatibility.patch b/uwsgi_fix_glibc_compatibility.patch deleted file mode 100644 index c8d27ff..0000000 --- a/uwsgi_fix_glibc_compatibility.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/core/utils.c -+++ b/core/utils.c -@@ -3514,7 +3514,7 @@ - tmpdir = "/tmp"; - } - #ifdef O_TMPFILE -- fd = open(tmpdir, O_TMPFILE | O_RDWR); -+ fd = open(tmpdir, O_TMPFILE | O_RDWR, S_IRUSR | S_IWUSR); - if (fd >= 0) { - return fd; - } From 914248b53becbcdc4b35994b91355b5e75700048 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 2 Jul 2015 14:01:22 -0700 Subject: [PATCH 180/427] Updated spec --- uwsgi.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/uwsgi.spec b/uwsgi.spec index 17130cd..91bccf7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1594,6 +1594,7 @@ fi - License is license (Jorge Gallegos) - Mark config files as %config (Jorge Gallegos) - Adding sources for new version (Jorge Gallegos) +- uwsgi_fix_glibc_compatibility merged upstream (Jorge Gallegos) * Tue Jun 23 2015 Thomas Spura - 2.0.9-11 - rebuilt for new zeromq 4.1.2 From 65dc87b3b261e7a5ed52c24085461bb4e66f27e4 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Jul 2015 08:28:12 -0700 Subject: [PATCH 181/427] Adding new sources --- .gitignore | 2 ++ sources | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 486ca2f..5f4fd85 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,5 @@ /uwsgi-docs-4ac8256.tar.gz /uwsgi-2.0.11.tar.gz /uwsgi-docs-c96716d.tar.gz +/uwsgi-docs-85d6b16.tar.gz +/uwsgi-2.0.11.1.tar.gz diff --git a/sources b/sources index ccac721..957675f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -c641966a6571d4386d607a87dfae5cb7 uwsgi-2.0.11.tar.gz -13fb0e276e330191269727eba7ef9987 uwsgi-docs-c96716d.tar.gz +a9d70b47151d5a72f1d333cbe4ea8042 uwsgi-docs-85d6b16.tar.gz +087ba7b53bd4afc0f0218f5eb3398809 uwsgi-2.0.11.1.tar.gz From 6bc37387587a11c6251f5dcc3caba0300069b9b4 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 21 Jul 2015 08:31:14 -0700 Subject: [PATCH 182/427] Updating to latest stable release --- uwsgi.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 91bccf7..4543867 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 11 +%global releasenumber 11.1 # Documentation sources: -%global commit c96716de34fa6572c129468507c695d9adef9829 +%global commit 85d6b16c62f2d6239d5d5a69594e984e42fd4777 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -1589,6 +1589,9 @@ fi %changelog +* Tue Jul 21 2015 Jorge A Gallegos - 2.0.11.1-1 +- New emergency security release + * Thu Jul 02 2015 Jorge A Gallegos - 2.0.11-1 - Adding the dummy and notfound plugins (Jorge Gallegos) - License is license (Jorge Gallegos) From 23342e478bf95c1c2cdc670bb267bb93031f9eee Mon Sep 17 00:00:00 2001 From: David Tardon Date: Wed, 22 Jul 2015 19:43:15 +0200 Subject: [PATCH 183/427] rebuild for Boost 1.58 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 4543867..0116b03 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1589,6 +1589,9 @@ fi %changelog +* Wed Jul 22 2015 David Tardon - 2.0.11.1-2 +- rebuild for Boost 1.58 + * Tue Jul 21 2015 Jorge A Gallegos - 2.0.11.1-1 - New emergency security release From 3c71e3b14cb633574b88d9b819fbafc5664ea285 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 29 Jul 2015 13:31:15 -0500 Subject: [PATCH 184/427] - Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0116b03..9dc043c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1589,6 +1589,9 @@ fi %changelog +* Wed Jul 29 2015 Fedora Release Engineering - 2.0.11.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 + * Wed Jul 22 2015 David Tardon - 2.0.11.1-2 - rebuild for Boost 1.58 From 8a901c17bc91f0d771c2bdcf4b57201407928de0 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Fri, 28 Aug 2015 03:14:10 +0100 Subject: [PATCH 185/427] Rebuilt for Boost 1.59 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9dc043c..6a56816 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1589,6 +1589,9 @@ fi %changelog +* Fri Aug 28 2015 Jonathan Wakely - 2.0.11.1-4 +- Rebuilt for Boost 1.59 + * Wed Jul 29 2015 Fedora Release Engineering - 2.0.11.1-3 - Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 From 2ca7ce39e625226cd6367e6ba8170f0977bea5bb Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 6 Nov 2015 15:59:58 -0800 Subject: [PATCH 186/427] Updating to latest stable --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 9 ++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 5f4fd85..55f361e 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,5 @@ /uwsgi-docs-c96716d.tar.gz /uwsgi-docs-85d6b16.tar.gz /uwsgi-2.0.11.1.tar.gz +/uwsgi-2.0.11.2.tar.gz +/uwsgi-docs-2d5b92a.tar.gz diff --git a/sources b/sources index 957675f..667af9c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -a9d70b47151d5a72f1d333cbe4ea8042 uwsgi-docs-85d6b16.tar.gz -087ba7b53bd4afc0f0218f5eb3398809 uwsgi-2.0.11.1.tar.gz +1f02dcbee7f6f61de4b1fd68350cf16f uwsgi-2.0.11.2.tar.gz +862f5978cf9c4d04a7f2083250c393ad uwsgi-docs-2d5b92a.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index 6a56816..187abb9 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 11.1 +%global releasenumber 11.2 # Documentation sources: -%global commit 85d6b16c62f2d6239d5d5a69594e984e42fd4777 +%global commit 2d5b92a682ebdf056b1c8792f04539b1e7eff62c %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 4%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1589,6 +1589,9 @@ fi %changelog +* Fri Nov 06 2015 Jorge A Gallegos - 2.0.11.2-1 +- With latest stable + * Fri Aug 28 2015 Jonathan Wakely - 2.0.11.1-4 - Rebuilt for Boost 1.59 From 2e37072e7684e765d4f83788e7d37638fb04e97a Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Tue, 10 Nov 2015 18:14:59 +0000 Subject: [PATCH 187/427] - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 187abb9..51ec33d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -95,7 +95,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1589,6 +1589,9 @@ fi %changelog +* Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + * Fri Nov 06 2015 Jorge A Gallegos - 2.0.11.2-1 - With latest stable From d19dde9b1c789f61a412c6e6e8314e669936dae4 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 17 Nov 2015 16:02:10 -0800 Subject: [PATCH 188/427] Fixing bz 1247395 --- uwsgi.spec | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 51ec33d..9f0acdb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -15,6 +15,7 @@ %bcond_without systemd %bcond_without go %bcond_without python3 +%{!?python3_pkgversion: %global python3_pkgversion 3} %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq @@ -80,8 +81,9 @@ %bcond_without java # el7 does have systemd %bcond_without systemd -# el7 doesn't have python3 -%bcond_with python3 +# el7 does have python3 +%bcond_without python3 +%{!?python3_pkgversion: %global python3_pkgversion 34} # el7 doesn't have zeromq %bcond_with zeromq # el7 doesn't have greenlet @@ -95,7 +97,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -118,7 +120,7 @@ Patch6: uwsgi-ppc64le-java.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} -BuildRequires: python3-devel +BuildRequires: python%{python3_pkgversion}-devel %endif %if %{with greenlet} BuildRequires: python-greenlet-devel @@ -418,12 +420,12 @@ This package contains the syslog logger plugin for uWSGI %if %{with systemd} %package -n %{name}-logger-systemd -Summary: uWSGI - SystemD Journal logger plugin +Summary: uWSGI - systemd journal logger plugin Group: System Environment/Daemons Requires: %{name}-plugin-common %description -n %{name}-logger-systemd -This package contains the SystemD Journal logger plugin for uWSGI +This package contains the systemd journal logger plugin for uWSGI %endif %if %{with zeromq} @@ -679,12 +681,12 @@ Requires: python, %{name}-plugin-common This package contains the python plugin for uWSGI %package -n %{name}-plugin-python3 -Summary: uWSGI - Plugin for Python 3.2 support +Summary: uWSGI - Plugin for Python 3 support Group: System Environment/Daemons -Requires: python3, %{name}-plugin-common +Requires: python%{python3_pkgversion}, %{name}-plugin-common %description -n %{name}-plugin-python3 -This package contains the Python 3.2 plugin for uWSGI +This package contains the Python 3 plugin for uWSGI %package -n %{name}-plugin-rack Summary: uWSGI - Ruby rack plugin @@ -1071,8 +1073,8 @@ sed -in "s/mono, //" buildconf/fedora.ini %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini %if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/python fedora python3 -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python3 uwsgiconfig.py --plugin plugins/tornado fedora tornado3 +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python3 +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora tornado3 %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora @@ -1589,6 +1591,9 @@ fi %changelog +* Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 +- Attempting to deal with bz #1247395 + * Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 From f4bda35700b1688643e39614a12bad7f795ec7bb Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 17 Nov 2015 20:47:40 -0800 Subject: [PATCH 189/427] Fixing bz #1261942 --- uwsgi.init | 2 +- uwsgi.spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/uwsgi.init b/uwsgi.init index 05c8a68..42402e6 100644 --- a/uwsgi.init +++ b/uwsgi.init @@ -16,7 +16,7 @@ PROG=/usr/sbin/uwsgi OWNER=uwsgi NAME=uwsgi DESC="Fast, self-healing, application container server" -DAEMON_OPTS="--ini /etc/uwsgi.ini" +DAEMON_OPTS="--ini /etc/uwsgi.ini --daemonize /var/log/uwsgi.log" [ -f /etc/sysconfig/uwsgi ] && . /etc/sysconfig/uwsgi diff --git a/uwsgi.spec b/uwsgi.spec index 9f0acdb..02b096c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1593,6 +1593,7 @@ fi %changelog * Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 - Attempting to deal with bz #1247395 +- Fixing bz #1261942 * Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 From 05864d2e1039ddac00379d894ac97488614e0125 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 17 Nov 2015 21:15:38 -0800 Subject: [PATCH 190/427] Fixing bz #1258388 --- uwsgi.spec | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 02b096c..fb4a998 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -198,6 +198,24 @@ Requires: %{name} This package contains the development header files and libraries for uWSGI extensions +%package -n python-uwsgidecorators +Summary: Python decorators providing access to the uwsgi API +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: %{name}-plugin-python = %{version}-%{release} + +%description -n python-uwsgidecorators +The uwsgidecorators Python module provides higher-level access to the uWSGI API. + +%package -n python3-uwsgidecorators +Summary: Python 3 decorators providing access to the uwsgi API +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: %{name}-plugin-python3 = %{version}-%{release} + +%description -n python3-uwsgidecorators +The uwsgidecorators Python 3 module provides higher-level access to the uWSGI API. + %package -n %{name}-docs Summary: uWSGI - Documentation Group: Documentation @@ -1148,6 +1166,10 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} +%{__install} -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py +%if %{with python3} +%{__install} -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py +%endif %if %{with java} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} %endif @@ -1243,6 +1265,15 @@ fi %files -n %{name}-devel %{_includedir}/%{name} +%files -n python-uwsgidecorators +%defattr(-,root,root,-) +%{python_sitelib}/uwsgidecorators.py* + +%if %{with python3} +%defattr(-,root,root,-) +%{python3_sitelib}/uwsgidecorators.py* +%endif + %files -n %{name}-docs %doc docs @@ -1594,6 +1625,7 @@ fi * Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 - Attempting to deal with bz #1247395 - Fixing bz #1261942 +- Fixing bz #1258388 * Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 From 4981a46526beb59974341eb31220b4453d0d7d41 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 17 Nov 2015 21:43:39 -0800 Subject: [PATCH 191/427] Adding uwsgidecorators --- uwsgi.spec | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index fb4a998..1cd8109 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1166,9 +1166,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} -%{__install} -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py +%{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py %if %{with python3} -%{__install} -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py +%{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py %endif %if %{with java} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} @@ -1267,11 +1267,12 @@ fi %files -n python-uwsgidecorators %defattr(-,root,root,-) -%{python_sitelib}/uwsgidecorators.py* +%{python_sitelib}/* %if %{with python3} +%files -n python3-uwsgidecorators %defattr(-,root,root,-) -%{python3_sitelib}/uwsgidecorators.py* +%{python3_sitelib}/* %endif %files -n %{name}-docs From ab1d3544e94a857c9e0bb70b7c76e94a51c7d135 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 17 Nov 2015 21:50:22 -0800 Subject: [PATCH 192/427] glusterfs in epel7 --- uwsgi.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1cd8109..c2cc313 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -90,8 +90,9 @@ %bcond_with greenlet # el7 doesn't have perl-Coro %bcond_with perl -# this fails in el not sure why -%bcond_with glusterfs +# el7 can now build glusterfs so that's neat +%bcond_without glusterfs +# this fails in el7 not sure why %bcond_with gridfs %endif @@ -1627,6 +1628,7 @@ fi - Attempting to deal with bz #1247395 - Fixing bz #1261942 - Fixing bz #1258388 +- Fixing bz #1242155 * Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 From 20fd2d26f21d6cf9e59429a061185713277c88a5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 13:14:17 -0800 Subject: [PATCH 193/427] Adding the source to the -devel subpackage --- uwsgi.spec | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index c2cc313..e3c956e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,6 +10,10 @@ %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} +# Turn off byte compilation so it doesn't try +# to auto-optimize the code in /usr/src/uwsgi +%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') + # This is primarily built for fedora, make it easy right now %if 0%{?fedora} %bcond_without systemd @@ -191,9 +195,9 @@ Being fully modular can use tons of different technology on top of the same core. %package -n %{name}-devel -Summary: uWSGI - Development header files and libraries -Group: Development/Libraries -Requires: %{name} +Summary: uWSGI - Development header files and libraries +Group: Development/Libraries +Requires: %{name} %description -n %{name}-devel This package contains the development header files and libraries @@ -1144,6 +1148,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %install mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d +mkdir -p %{buildroot}%{_usrsrc}/%{name}/%{version} %if %{with systemd} mkdir -p %{buildroot}%{_unitdir} %else @@ -1160,6 +1165,7 @@ mkdir -p %{buildroot}/usr/lib/mono/gac/ %endif mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz +tar -C %{buildroot}%{_usrsrc}/%{name}/%{version} --strip-components=1 -xvzf %{SOURCE0} cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora @@ -1168,8 +1174,10 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py +%py_byte_compile %{__python2} %{buildroot}%{python_sitelib}/ %if %{with python3} %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py +%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/ %endif %if %{with java} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} @@ -1265,6 +1273,7 @@ fi %files -n %{name}-devel %{_includedir}/%{name} +%{_usrsrc}/%{name}/%{version} %files -n python-uwsgidecorators %defattr(-,root,root,-) @@ -1629,6 +1638,7 @@ fi - Fixing bz #1261942 - Fixing bz #1258388 - Fixing bz #1242155 +- Fixing bz #1240236 * Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 From 50adc454333ff455e1d1e3dbc05d253335d5a3da Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 13:20:21 -0800 Subject: [PATCH 194/427] Verbose changelog --- uwsgi.spec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index e3c956e..1fdef83 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1634,11 +1634,11 @@ fi %changelog * Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 -- Attempting to deal with bz #1247395 -- Fixing bz #1261942 -- Fixing bz #1258388 -- Fixing bz #1242155 -- Fixing bz #1240236 +- Fixing bz #1247395 - python3 plugin for epel7 +- Fixing bz #1261942 - daemonize properly in SystemV +- Fixing bz #1258388 - package uwsgidecorators +- Fixing bz #1242155 - glusterfs plugin for epel7 +- Fixing bz #1240236 - add source to -devel subpackage * Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 From ec5c01271c40cf8883ea0e743596d9da5b1e1b1a Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 13:31:54 -0800 Subject: [PATCH 195/427] ppc64 is a pain --- uwsgi.spec | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 1fdef83..d583a3c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -94,15 +94,19 @@ %bcond_with greenlet # el7 doesn't have perl-Coro %bcond_with perl -# el7 can now build glusterfs so that's neat +# el7 can now build glusterfs but not on PPC so that's neat +%ifarch ppc64 +%bcond_with glusterfs +%else %bcond_without glusterfs +%endif # this fails in el7 not sure why %bcond_with gridfs %endif Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1633,6 +1637,9 @@ fi %changelog +* Wed Nov 18 2015 Jorge A Gallegos +- Fixing glusterfs for ppc64 + * Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 - Fixing bz #1247395 - python3 plugin for epel7 - Fixing bz #1261942 - daemonize properly in SystemV From 6b308b72254b6646db0a07eb961276334d37a869 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 14:05:08 -0800 Subject: [PATCH 196/427] Let's see if this works --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index d583a3c..8d3459e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1178,7 +1178,7 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py -%py_byte_compile %{__python2} %{buildroot}%{python_sitelib}/ +%py_byte_compile %{__python} %{buildroot}%{python_sitelib}/ %if %{with python3} %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py %py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/ From a124aedfb4c99569f622056b8ea0e049cf1d5f16 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 17:29:11 -0800 Subject: [PATCH 197/427] EL6 doesn't have the py_compile macros Leaving it to do whatever it does by default --- uwsgi.spec | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 8d3459e..8650db6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,10 +10,6 @@ %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} -# Turn off byte compilation so it doesn't try -# to auto-optimize the code in /usr/src/uwsgi -%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') - # This is primarily built for fedora, make it easy right now %if 0%{?fedora} %bcond_without systemd @@ -77,6 +73,9 @@ %bcond_with gridfs %bcond_with tuntap %bcond_with mongodblibs +%global manual_py_compile 0 +%else +%global manual_py_compile 1 %endif # Conditionally enable/disable some things in epel7 @@ -104,6 +103,12 @@ %bcond_with gridfs %endif +# Turn off byte compilation so it doesn't try +# to auto-optimize the code in /usr/src/uwsgi +%if %{manual_py_compile} == 1 +%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') +%endif + Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} Release: 4%{?dist} @@ -1178,11 +1183,15 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} %{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 %py_byte_compile %{__python} %{buildroot}%{python_sitelib}/ +%endif %if %{with python3} %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 %py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/ %endif +%endif %if %{with java} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} %endif From 894060cc00e9a978ca7008569cd9c69cbe193ac8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 17:44:22 -0800 Subject: [PATCH 198/427] Missing tag --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 8650db6..fe7cd08 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1646,7 +1646,7 @@ fi %changelog -* Wed Nov 18 2015 Jorge A Gallegos +* Wed Nov 18 2015 Jorge A Gallegos - 2.0.11.2-4 - Fixing glusterfs for ppc64 * Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 From eb6d74cd941892d75ca7df886e250a442af91df1 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 18 Nov 2015 17:44:59 -0800 Subject: [PATCH 199/427] Bumping --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index fe7cd08..698874d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -111,7 +111,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1646,6 +1646,9 @@ fi %changelog +* Thu Nov 19 2015 Jorge A Gallegos - 2.0.11.2-5 +- Fixing manual brp-compiling in el6 + * Wed Nov 18 2015 Jorge A Gallegos - 2.0.11.2-4 - Fixing glusterfs for ppc64 From 1b423ae4ed2acb3b5a46a75ea943facfe51e734f Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Sun, 6 Dec 2015 08:37:56 +0000 Subject: [PATCH 200/427] Fixing glusterfs for non x86_64 on el7 --- uwsgi.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 698874d..3c04389 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -93,8 +93,8 @@ %bcond_with greenlet # el7 doesn't have perl-Coro %bcond_with perl -# el7 can now build glusterfs but not on PPC so that's neat -%ifarch ppc64 +# el7 can now build glusterfs but only on x86_64 +%ifnarch x86_64 %bcond_with glusterfs %else %bcond_without glusterfs @@ -111,7 +111,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1646,6 +1646,9 @@ fi %changelog +* Sun Dec 6 2015 Peter Robinson 2.0.11.2-6 +- Fixing glusterfs for non x86_64 on el7 + * Thu Nov 19 2015 Jorge A Gallegos - 2.0.11.2-5 - Fixing manual brp-compiling in el6 From d147c005764b8d5e097da54c1d078ec2068b5f96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 11 Dec 2015 17:15:20 +0200 Subject: [PATCH 201/427] Don't build tornado3 for EL7 (no python3-tornado available yet) --- uwsgi.spec | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 3c04389..f514734 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -15,6 +15,7 @@ %bcond_without systemd %bcond_without go %bcond_without python3 +%bcond_without tornado3 %{!?python3_pkgversion: %global python3_pkgversion 3} %bcond_without ruby19 %bcond_without tuntap @@ -65,6 +66,7 @@ %bcond_with go # el6 doesn't have python3 %bcond_with python3 +%bcond_with tornado3 # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 # el7 doesn't have perl-PSGI @@ -87,6 +89,8 @@ # el7 does have python3 %bcond_without python3 %{!?python3_pkgversion: %global python3_pkgversion 34} +# ...but no python3-tornado yet +%bcond_with tornado3 # el7 doesn't have zeromq %bcond_with zeromq # el7 doesn't have greenlet @@ -111,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1106,8 +1110,10 @@ sed -in "s/mono, //" buildconf/fedora.ini CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python3 +%if %{with tornado3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora tornado3 %endif +%endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora @@ -1547,7 +1553,7 @@ fi %files -n %{name}-plugin-tornado %{_libdir}/%{name}/tornado_plugin.so -%if %{with python3} +%if %{with tornado3} %files -n %{name}-plugin-tornado3 %{_libdir}/%{name}/tornado3_plugin.so %endif @@ -1646,6 +1652,9 @@ fi %changelog +* Fri Dec 11 2015 Ville Skyttä - 2.0.11.2-7 +- Don't build tornado3 for EL7 (no python3-tornado available yet) + * Sun Dec 6 2015 Peter Robinson 2.0.11.2-6 - Fixing glusterfs for non x86_64 on el7 From c9e99425f8f7f6d79e9acd2ad83d4a004566a1c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 11 Dec 2015 17:54:49 +0200 Subject: [PATCH 202/427] Fix EL7 ppc64le build (remove the patch that breaks it) --- uwsgi-ppc64le-java.patch | 12 ------------ uwsgi.spec | 6 +----- 2 files changed, 1 insertion(+), 17 deletions(-) delete mode 100644 uwsgi-ppc64le-java.patch diff --git a/uwsgi-ppc64le-java.patch b/uwsgi-ppc64le-java.patch deleted file mode 100644 index 54e81d1..0000000 --- a/uwsgi-ppc64le-java.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py.ppc64le uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py ---- uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py.ppc64le 2015-04-14 13:18:25.042451636 +0200 -+++ uwsgi-2.0.9/plugins/jvm/uwsgiplugin.py 2015-04-14 13:18:57.590565389 +0200 -@@ -19,6 +19,8 @@ elif arch in ('x86_64',): - arch = 'amd64' - elif arch.startswith('arm'): - arch = 'arm' -+elif arch in ('ppc64le',): -+ arch = 'ppc64' - - # try to detect the JVM - if operating_system == 'darwin': diff --git a/uwsgi.spec b/uwsgi.spec index f514734..df4b9f4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -133,8 +133,6 @@ Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch # https://github.com/unbit/uwsgi/issues/882 Patch5: uwsgi_fix_mongodb.patch -# Fix java/jvm include path on ppc64le -Patch6: uwsgi-ppc64le-java.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} @@ -1086,9 +1084,6 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %if 0%{?fedora} >= 22 %patch5 -p1 %endif -%if 0%{?rhel} >= 7 -%patch6 -p1 -b .ppc64le -%endif #disable plug-ins %if %{without mongodblibs} @@ -1654,6 +1649,7 @@ fi %changelog * Fri Dec 11 2015 Ville Skyttä - 2.0.11.2-7 - Don't build tornado3 for EL7 (no python3-tornado available yet) +- Fix EL7 ppc64le build * Sun Dec 6 2015 Peter Robinson 2.0.11.2-6 - Fixing glusterfs for non x86_64 on el7 From 388448d466a5bb83686eda849db3ac0f91d4ad2d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 30 Dec 2015 22:34:36 -0800 Subject: [PATCH 203/427] Updating to latest stable version 2.0.12 --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 6 +++--- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 55f361e..cb07b48 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,5 @@ /uwsgi-2.0.11.1.tar.gz /uwsgi-2.0.11.2.tar.gz /uwsgi-docs-2d5b92a.tar.gz +/uwsgi-docs-5f5f899.tar.gz +/uwsgi-2.0.12.tar.gz diff --git a/sources b/sources index 667af9c..c42e65f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -1f02dcbee7f6f61de4b1fd68350cf16f uwsgi-2.0.11.2.tar.gz -862f5978cf9c4d04a7f2083250c393ad uwsgi-docs-2d5b92a.tar.gz +aa14770d272007665e3feb8f0b2127e4 uwsgi-docs-5f5f899.tar.gz +1451cab954bad0d7d7429e4d2c84b5df uwsgi-2.0.12.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index df4b9f4..58a56ae 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 11.2 +%global releasenumber 12 # Documentation sources: -%global commit 2d5b92a682ebdf056b1c8792f04539b1e7eff62c +%global commit 5f5f8995a9cafca7c09721f62423f68d41c5da28 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 7%{?dist} +Release: 0%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions From 0c3c6ca210fbbc59772a993b49c3d351ef385e64 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 30 Dec 2015 22:35:21 -0800 Subject: [PATCH 204/427] Adjusting rpath patch for new release --- uwsgi_fix_rpath.patch | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index 50c31fb..a241bd3 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -1,8 +1,8 @@ diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py -index ac7eb3e..0911288 100644 +index f39ad63..d9e95bb 100644 --- a/plugins/jvm/uwsgiplugin.py +++ b/plugins/jvm/uwsgiplugin.py -@@ -59,11 +59,6 @@ if "-framework JavaVM" in JVM_LIBPATH: +@@ -65,11 +65,6 @@ if "-framework JavaVM" in JVM_LIBPATH: GCC_LIST = ['jvm_plugin'] @@ -15,37 +15,35 @@ index ac7eb3e..0911288 100644 if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: os._exit(1) diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py -index 4142aea..774d6bb 100644 +index 45c58e5..8eb2b73 100644 --- a/plugins/php/uwsgiplugin.py +++ b/plugins/php/uwsgiplugin.py -@@ -17,7 +17,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() +@@ -19,7 +19,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() if ld_run_path: LDFLAGS.append('-L%s' % ld_run_path) - os.environ['LD_RUN_PATH'] = ld_run_path - LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp5'] + LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py -index 13c29cd..8bc464c 100644 +index eb6755f..b75fa29 100644 --- a/plugins/python/uwsgiplugin.py +++ b/plugins/python/uwsgiplugin.py -@@ -44,10 +44,8 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: - else: - try: - LDFLAGS.append("-L%s" % sysconfig.get_config_var('LIBDIR')) -- os.environ['LD_RUN_PATH'] = "%s" % (sysconfig.get_config_var('LIBDIR')) - except: - LDFLAGS.append("-L%s/lib" % sysconfig.PREFIX) -- os.environ['LD_RUN_PATH'] = "%s/lib" % sysconfig.PREFIX +@@ -58,8 +58,6 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: + LDFLAGS.append("-L%s" % libdir) + LDFLAGS.append("-Wl,-rpath=%s" % libdir) +- os.environ['LD_RUN_PATH'] = "%s" % libdir +- LIBS.append('-lpython%s' % get_python_version()) else: + LIBS = [] diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py -index 3d8ee83..45dc5e3 100644 +index 210b28e..06f5edd 100644 --- a/plugins/rack/uwsgiplugin.py +++ b/plugins/rack/uwsgiplugin.py -@@ -44,7 +44,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" +@@ -46,7 +46,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" if has_shared == 'yes': LDFLAGS.append('-L' + libpath ) From e138ad777ef08da95bef82ffce1345169d06d185 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 30 Dec 2015 22:36:26 -0800 Subject: [PATCH 205/427] Making -devel not pull unnecessary deps --- uwsgi.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/uwsgi.spec b/uwsgi.spec index 58a56ae..333ef6b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -210,6 +210,7 @@ Summary: uWSGI - Development header files and libraries Group: Development/Libraries Requires: %{name} +%filter_provides_in %{_usrsrc}/%{name} %description -n %{name}-devel This package contains the development header files and libraries for uWSGI extensions From 560ab084ba0b9146daf0d1decea5558886d21506 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 30 Dec 2015 22:37:29 -0800 Subject: [PATCH 206/427] Modifying an old changelog entry for rpmlint --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 333ef6b..eef3446 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1689,7 +1689,7 @@ fi * Thu Jul 02 2015 Jorge A Gallegos - 2.0.11-1 - Adding the dummy and notfound plugins (Jorge Gallegos) - License is license (Jorge Gallegos) -- Mark config files as %config (Jorge Gallegos) +- Mark config files as config (Jorge Gallegos) - Adding sources for new version (Jorge Gallegos) - uwsgi_fix_glibc_compatibility merged upstream (Jorge Gallegos) From e15cc781721384cd70954b0a07796609a8d175fe Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 30 Dec 2015 22:38:10 -0800 Subject: [PATCH 207/427] Using _mono macros instead of hardcoded paths --- uwsgi.spec | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index eef3446..da0cda4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1172,7 +1172,7 @@ mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/%{name} mkdir -p %{buildroot}%{_httpd_moddir} %if %{with mono} -mkdir -p %{buildroot}/usr/lib/mono/gac/ +mkdir -p %{buildroot}%{_monogacdir} %endif mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz @@ -1480,11 +1480,9 @@ fi %if %{with mono} %files -n %{name}-plugin-mono -%dir /usr/lib/mono/%{name}/ -%dir /usr/lib/mono/gac/%{name}/ %{_libdir}/%{name}/mono_plugin.so -/usr/lib/mono/%{name}/*.dll -/usr/lib/mono/gac/%{name}/*/*.dll +%{_monodir}/%{name}/ +%{_monogacdir}/%{name}/ %endif %files -n %{name}-plugin-nagios From dae1b29cb85345274b29adf904582d5ec5c8c4c6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 30 Dec 2015 22:42:06 -0800 Subject: [PATCH 208/427] Fixing stats-pusher-mongo for gnu++11 --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index da0cda4..824d719 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1112,7 +1112,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +CXXFLAGS="%{optflags} -std=c++11" CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mono fedora From 7aeddce457bb5522433431734a4083eff8c5c576 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 31 Dec 2015 00:18:59 -0800 Subject: [PATCH 209/427] First try was unsuccessful --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 824d719..68d2e0b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -191,6 +191,10 @@ Requires(preun): chkconfig Requires(preun): initscripts %endif +%filter_requires_in %{_usrsrc} +%filter_provides_in %{_usrsrc} +%filter_setup + %description uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly application container server. Born as a WSGI-only server, over time it has @@ -210,7 +214,6 @@ Summary: uWSGI - Development header files and libraries Group: Development/Libraries Requires: %{name} -%filter_provides_in %{_usrsrc}/%{name} %description -n %{name}-devel This package contains the development header files and libraries for uWSGI extensions From 12df1717c228557217eb2deaa462c27a32216361 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 31 Dec 2015 09:59:44 -0800 Subject: [PATCH 210/427] Attempting to build with g++ --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 68d2e0b..417d22f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1115,7 +1115,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora -CXXFLAGS="%{optflags} -std=c++11" CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +CXXFLAGS="%{optflags} -std=c++11" CC="g++" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mono fedora From 7a357ad30d4f0b802f95dea3cac068647e5ced6c Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 31 Dec 2015 14:11:15 -0800 Subject: [PATCH 211/427] Adding the build profile to -devel subpackage --- README.Fedora | 3 +++ uwsgi.spec | 1 + 2 files changed, 4 insertions(+) diff --git a/README.Fedora b/README.Fedora index 0525d14..1a12a2c 100644 --- a/README.Fedora +++ b/README.Fedora @@ -1,3 +1,6 @@ +The build profile used to build this package is shipped along with the +-devel subpackage and is located in the ``buildconf`` subdirectory in the +src directory. A copy of the documentation can be obtained by installing the ``uwsgi-docs`` package. The documentation is a copy as of the git SHA: diff --git a/uwsgi.spec b/uwsgi.spec index 417d22f..f41a978 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1180,6 +1180,7 @@ mkdir -p %{buildroot}%{_monogacdir} mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz tar -C %{buildroot}%{_usrsrc}/%{name}/%{version} --strip-components=1 -xvzf %{SOURCE0} +cp %{SOURCE1} %{buildroot}%{_usrsrc}/%{name}/%{version}/buildconf/ cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora From 65aa0b5d9bfed2390d7911646840e2a3c90f3d50 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 31 Dec 2015 14:15:24 -0800 Subject: [PATCH 212/427] Bumping for new release Fedora 23 can't be upgraded just yet, issue with the stats pusher for mongodb here https://github.com/unbit/uwsgi/issues/1140 --- uwsgi.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index f41a978..2350861 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 0%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,15 @@ fi %changelog +* Thu Dec 31 2015 Jorge A Gallegos - 2.0.12-1 +- Adding the build profile to -devel subpackage (Jorge Gallegos) +- Fixing stats-pusher-mongo for gnu++11 (Jorge Gallegos) +- Using _mono macros instead of hardcoded paths (Jorge Gallegos) +- Modifying an old changelog entry for rpmlint (Jorge Gallegos) +- Making -devel not pull unnecessary deps (Jorge Gallegos) +- Adjusting rpath patch for new release (Jorge Gallegos) +- Updating to latest stable version 2.0.12 (Jorge Gallegos) + * Fri Dec 11 2015 Ville Skyttä - 2.0.11.2-7 - Don't build tornado3 for EL7 (no python3-tornado available yet) - Fix EL7 ppc64le build From 29ce88684147d8d0990f3537fdbca07435847836 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 2 Jan 2016 11:49:36 -0800 Subject: [PATCH 213/427] Back to gcc --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2350861..30f41ff 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1115,7 +1115,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora -CXXFLAGS="%{optflags} -std=c++11" CC="g++" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mono fedora From 9986ff18f176a94fc7e74f1cb5ccd2c4d237b809 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Sat, 2 Jan 2016 11:49:56 -0800 Subject: [PATCH 214/427] Bumping spec --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 30f41ff..2c8947c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Sat Jan 02 2016 Jorge A Gallegos - 2.0.12-2 +- Trying again with GCC + * Thu Dec 31 2015 Jorge A Gallegos - 2.0.12-1 - Adding the build profile to -devel subpackage (Jorge Gallegos) - Fixing stats-pusher-mongo for gnu++11 (Jorge Gallegos) From 098bb538cb5dc066124e7cf6271c7008811a3a5a Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 7 Jan 2016 14:23:32 -0800 Subject: [PATCH 215/427] Really fixing stats_pusher_mongodb --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2c8947c..294d8f7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1115,7 +1115,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mono fedora From 962c8f889dc583dfb67f524f0af80fe665715404 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 7 Jan 2016 14:24:39 -0800 Subject: [PATCH 216/427] Bumping spec --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 294d8f7..e4a5793 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Thu Jan 07 2016 Jorge A Gallegos - 2.0.12-3 +- Really fixing stats_pusher_mongodb (Jorge Gallegos) + * Sat Jan 02 2016 Jorge A Gallegos - 2.0.12-2 - Trying again with GCC From 1fd27a0925a6c3280d7d6032e32305ac44657ee2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Wed, 13 Jan 2016 16:55:17 +0100 Subject: [PATCH 217/427] Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e4a5793..42b66da 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Wed Jan 13 2016 Vít Ondruch - 2.0.12-4 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3 + * Thu Jan 07 2016 Jorge A Gallegos - 2.0.12-3 - Really fixing stats_pusher_mongodb (Jorge Gallegos) From 2e0af756de4c1fb2d5f2fb6abb12f3a91425b7e4 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Fri, 29 Jan 2016 14:54:09 +0000 Subject: [PATCH 218/427] Rebuilt for Boost 1.60 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 42b66da..ae9b0dc 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Fri Jan 29 2016 Jonathan Wakely - 2.0.12-5 +- Rebuilt for Boost 1.60 + * Wed Jan 13 2016 Vít Ondruch - 2.0.12-4 - Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3 From 67cd1567f5018644b161d27d101097722631bc09 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 5 Feb 2016 02:29:59 +0000 Subject: [PATCH 219/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ae9b0dc..7d48004 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Fri Feb 05 2016 Fedora Release Engineering - 2.0.12-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Fri Jan 29 2016 Jonathan Wakely - 2.0.12-5 - Rebuilt for Boost 1.60 From ea8b8708f7806e0e492150dc88f67f2be521f87e Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Tue, 12 Apr 2016 21:01:47 +0100 Subject: [PATCH 220/427] Mongodb doesn't depend on v8 anymore so is now supported on all LE arches --- uwsgi.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 7d48004..2ae9cdb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -31,11 +31,11 @@ %bcond_without mono %endif # mongodblibs -# mongodb in little endian only, but also requires v8 -%ifnarch %{ix86} x86_64 %{arm} -%bcond_with mongodblibs -%else +# mongodb is little endian only +%ifnarch ppc ppc64 s390 s390x %bcond_without mongodblibs +%else +%bcond_with mongodblibs %endif # v8 %ifnarch %{ix86} x86_64 %{arm} @@ -1650,6 +1650,9 @@ fi %changelog +* Tue Apr 12 2016 Peter Robinson 2.0.12-7 +- Mongodb doesn't depend on v8 anymore so is now supported on all LE arches + * Fri Feb 05 2016 Fedora Release Engineering - 2.0.12-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From c81af7f362f4a17b9d6a590b45535b4fb5b41d3b Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Tue, 12 Apr 2016 21:05:18 +0100 Subject: [PATCH 221/427] bump release --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2ae9cdb..4b827eb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions From fb15115de9299b793ecd7676ad665b81d4da2f72 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 17 May 2016 04:35:55 +0200 Subject: [PATCH 222/427] Perl 5.24 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 4b827eb..aedc114 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Tue May 17 2016 Jitka Plesnikova - 2.0.12-8 +- Perl 5.24 rebuild + * Tue Apr 12 2016 Peter Robinson 2.0.12-7 - Mongodb doesn't depend on v8 anymore so is now supported on all LE arches From a71feb42b6f6e8e6db2a00a288f46539e651a827 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 19 Jul 2016 13:05:32 +0000 Subject: [PATCH 223/427] - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index aedc114..d980dd5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Tue Jul 19 2016 Fedora Release Engineering - 2.0.12-9 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + * Tue May 17 2016 Jitka Plesnikova - 2.0.12-8 - Perl 5.24 rebuild From 6e11853b72f75d644809bd0a28d0405f418460ce Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 27 Jul 2016 22:59:31 -0500 Subject: [PATCH 224/427] Bumped to latest stable version --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 9 ++++++--- uwsgi_fix_rpath.patch | 6 +++--- uwsgi_trick_chroot_rpmbuild.patch | 6 +++--- 5 files changed, 16 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index cb07b48..381ef6c 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,5 @@ /uwsgi-docs-2d5b92a.tar.gz /uwsgi-docs-5f5f899.tar.gz /uwsgi-2.0.12.tar.gz +/uwsgi-2.0.13.1.tar.gz +/uwsgi-docs-0326082.tar.gz diff --git a/sources b/sources index c42e65f..70d623a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -aa14770d272007665e3feb8f0b2127e4 uwsgi-docs-5f5f899.tar.gz -1451cab954bad0d7d7429e4d2c84b5df uwsgi-2.0.12.tar.gz +e9ec5b2b296ce21b3787e0579d02bade uwsgi-2.0.13.1.tar.gz +5036553cd529ac5d24940ef2e3a7481f uwsgi-docs-0326082.tar.gz diff --git a/uwsgi.spec b/uwsgi.spec index d980dd5..c6dd783 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 12 +%global releasenumber 13.1 # Documentation sources: -%global commit 5f5f8995a9cafca7c09721f62423f68d41c5da28 +%global commit 032608205f7dc73c651de6166bd874be859cd7fd %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 9%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1650,6 +1650,9 @@ fi %changelog +* Thu Jul 28 2016 Jorge A Gallegos - 2.0.13.1-1 +- Bumped to latest stable + * Tue Jul 19 2016 Fedora Release Engineering - 2.0.12-9 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index a241bd3..0333830 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -15,7 +15,7 @@ index f39ad63..d9e95bb 100644 if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: os._exit(1) diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py -index 45c58e5..8eb2b73 100644 +index d930c44..273cdde 100644 --- a/plugins/php/uwsgiplugin.py +++ b/plugins/php/uwsgiplugin.py @@ -19,7 +19,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() @@ -27,12 +27,12 @@ index 45c58e5..8eb2b73 100644 LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py -index eb6755f..b75fa29 100644 +index 843876f..69ae68f 100644 --- a/plugins/python/uwsgiplugin.py +++ b/plugins/python/uwsgiplugin.py @@ -58,8 +58,6 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: LDFLAGS.append("-L%s" % libdir) - LDFLAGS.append("-Wl,-rpath=%s" % libdir) + LDFLAGS.append("-Wl,-rpath,%s" % libdir) - os.environ['LD_RUN_PATH'] = "%s" % libdir - diff --git a/uwsgi_trick_chroot_rpmbuild.patch b/uwsgi_trick_chroot_rpmbuild.patch index 3bfb1ac..c23c06f 100644 --- a/uwsgi_trick_chroot_rpmbuild.patch +++ b/uwsgi_trick_chroot_rpmbuild.patch @@ -1,13 +1,13 @@ diff --git a/uwsgiconfig.py b/uwsgiconfig.py -index e447123..4d55f2c 100644 +index 59393e1..e43f092 100644 --- a/uwsgiconfig.py +++ b/uwsgiconfig.py -@@ -1129,10 +1129,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None): +@@ -1422,10 +1422,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None): except: pass - if uc: -- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin' +- plugin_dest = uc.get('plugin_build_dir', uc.get('plugin_dir')) + '/' + name + '_plugin' - else: - plugin_dest = name + '_plugin' + plugin_dest = name + '_plugin' From 02995563d54ed66a545794cdae17506c29ba4102 Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 2 Aug 2016 11:27:37 -0500 Subject: [PATCH 225/427] Build against v8-314 on F25+ rhbz#1339293 --- uwsgi.spec | 15 +++++++++++++-- uwsgi_v8-314_compatibility.patch | 12 ++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 uwsgi_v8-314_compatibility.patch diff --git a/uwsgi.spec b/uwsgi.spec index c6dd783..8f69751 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -133,6 +133,7 @@ Patch2: uwsgi_ruby20_compatibility.patch Patch3: uwsgi_fix_lua.patch # https://github.com/unbit/uwsgi/issues/882 Patch5: uwsgi_fix_mongodb.patch +Patch6: uwsgi_v8-314_compatibility.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed %if %{with python3} @@ -169,8 +170,12 @@ BuildRequires: systemd-devel, systemd-units BuildRequires: mono-devel, mono-web %endif %if %{with v8} +%if 0%{?fedora} >= 25 +BuildRequires: v8-314-devel +%else BuildRequires: v8-devel %endif +%endif %if %{with mongodblibs} BuildRequires: libmongodb-devel %endif @@ -828,7 +833,7 @@ This package contains the uGreen plugin for uWSGI %package -n %{name}-plugin-v8 Summary: uWSGI - Plugin for v8 support Group: System Environment/Daemons -Requires: %{name}-plugin-common, v8 +Requires: %{name}-plugin-common %description -n %{name}-plugin-v8 This package contains the v8 plugin for uWSGI @@ -1088,6 +1093,9 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %if 0%{?fedora} >= 22 %patch5 -p1 %endif +%if %{with v8} && 0%{?fedora} >= 25 +%patch6 -p1 +%endif #disable plug-ins %if %{without mongodblibs} @@ -1650,6 +1658,9 @@ fi %changelog +* Mon Aug 01 2016 Carl George - 2.0.13.1-2 +- Build against v8-314 on F25+ rhbz#1339293 + * Thu Jul 28 2016 Jorge A Gallegos - 2.0.13.1-1 - Bumped to latest stable diff --git a/uwsgi_v8-314_compatibility.patch b/uwsgi_v8-314_compatibility.patch new file mode 100644 index 0000000..63df56f --- /dev/null +++ b/uwsgi_v8-314_compatibility.patch @@ -0,0 +1,12 @@ +diff -Naurp a/plugins/v8/uwsgiplugin.py b/plugins/v8/uwsgiplugin.py +--- a/plugins/v8/uwsgiplugin.py 2016-05-12 12:37:49.000000000 -0500 ++++ b/plugins/v8/uwsgiplugin.py 2016-08-01 22:56:50.969785338 -0500 +@@ -1,7 +1,7 @@ + import os + NAME='v8' + +-CFLAGS = ['-Wno-deprecated-declarations'] ++CFLAGS = ['-Wno-deprecated-declarations', '-I/usr/include/v8-3.14'] + LDFLAGS = [] + LIBS = ['-lstdc++', '-lv8'] + engine = os.environ.get('UWSGICONFIG_V8_ENGINE', '') From 3130e7c94bbd64d7eeee2aa3139308c4e51e5400 Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 2 Aug 2016 15:53:22 -0500 Subject: [PATCH 226/427] Own /usr/src/uwsgi rhbz#1351796 --- uwsgi.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 8f69751..2ea1138 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1300,7 +1300,7 @@ fi %files -n %{name}-devel %{_includedir}/%{name} -%{_usrsrc}/%{name}/%{version} +%{_usrsrc}/%{name} %files -n python-uwsgidecorators %defattr(-,root,root,-) @@ -1660,6 +1660,7 @@ fi %changelog * Mon Aug 01 2016 Carl George - 2.0.13.1-2 - Build against v8-314 on F25+ rhbz#1339293 +- Own /usr/src/uwsgi rhbz#1351796 * Thu Jul 28 2016 Jorge A Gallegos - 2.0.13.1-1 - Bumped to latest stable From 96f551b5ba98ed95e6cbaca956ba9738f84d61dd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Aug 2016 22:54:01 -0500 Subject: [PATCH 227/427] %config(noreplace) for uwsgi.ini bz #1339558 --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2ea1138..9ed065e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1286,7 +1286,7 @@ fi %files %{_sbindir}/%{name} -%config %{_sysconfdir}/%{name}.ini +%config(noreplace) %{_sysconfdir}/%{name}.ini %if %{with systemd} %config %{_unitdir}/%{name}.service %else From c2f383ab58abe61e100cbb0508125840b223ed50 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Aug 2016 23:10:25 -0500 Subject: [PATCH 228/427] greenlet and gevent depend on python bz #1325524 This will pull the python subpackage, but actually adding the load configuration of the python plugin is responsibility of the user --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9ed065e..6c13ae7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -576,7 +576,7 @@ This package contains the geoip plugin for uWSGI %package -n %{name}-plugin-gevent Summary: uWSGI - Plugin for GEvent support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libevent +Requires: %{name}-plugin-common, %{name}-plugin-python, libevent %description -n %{name}-plugin-gevent This package contains the gevent plugin for uWSGI @@ -595,7 +595,7 @@ This package contains the glusterfs plugin for uWSGI %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons -Requires: python-greenlet, %{name}-plugin-common +Requires: python-greenlet, %{name}-plugin-python, %{name}-plugin-common %description -n %{name}-plugin-greenlet This package contains the python greenlet plugin for uWSGI From 957a3c875e8dd11dc8fc4ff13aae603c3fe391d5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 2 Aug 2016 23:20:12 -0500 Subject: [PATCH 229/427] chmod uwsgi sock file for bz #1338038 --- emperor.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/emperor.ini b/emperor.ini index e0ba2d1..6b974b9 100644 --- a/emperor.ini +++ b/emperor.ini @@ -4,5 +4,6 @@ gid = uwsgi pidfile = /run/uwsgi/uwsgi.pid emperor = /etc/uwsgi.d stats = /run/uwsgi/stats.sock +chmod-socket = 660 emperor-tyrant = true cap = setgid,setuid From 84ebfeb07479a22847bce89da4e836967642dbc3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 5 Oct 2016 11:15:15 -0500 Subject: [PATCH 230/427] Make subpackage interdependencies versioned To both version and release number --- uwsgi.spec | 190 ++++++++++++++++++++++++++--------------------------- 1 file changed, 95 insertions(+), 95 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6c13ae7..213d024 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -217,7 +217,7 @@ core. %package -n %{name}-devel Summary: uWSGI - Development header files and libraries Group: Development/Libraries -Requires: %{name} +Requires: %{name} = %{version}-%{release} %description -n %{name}-devel This package contains the development header files and libraries @@ -252,7 +252,7 @@ This package contains the documentation files for uWSGI %package -n %{name}-plugin-common Summary: uWSGI - Common plugins for uWSGI Group: System Environment/Daemons -Requires: %{name} +Requires: %{name} = %{version}-%{release} %description -n %{name}-plugin-common This package contains the most common plugins used with uWSGI. The @@ -262,7 +262,7 @@ plugins included in this package are: cache, CGI, RPC, uGreen %package -n %{name}-stats-pusher-file Summary: uWSGI - File Stats Pusher for uWSGI -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-stats-pusher-file This package contains the stats_pusher_file plugin for uWSGI @@ -270,7 +270,7 @@ This package contains the stats_pusher_file plugin for uWSGI %if %{with mongodblibs} %package -n %{name}-stats-pusher-mongodb Summary: uWSGI - MongoDB Stats Pusher for uWSGI -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-stats-pusher-mongodb This package contains the stats_pusher_mongodb plugin for uWSGI @@ -278,21 +278,21 @@ This package contains the stats_pusher_mongodb plugin for uWSGI %package -n %{name}-stats-pusher-socket Summary: uWSGI - Socket Stats Pusher for uWSGI -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-stats-pusher-socket This package contains the stats_pusher_socket plugin for uWSGI %package -n %{name}-stats-pusher-statsd Summary: uWSGI - StatsD Stats Pusher for uWSGI -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-stats-pusher-statsd This package contains the stats_pusher_statsd plugin for uWSGI %package -n %{name}-stats-pusher-zabbix Summary: uWSGI - Zabbix Stats Pusher for uWSGI -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-stats-pusher-zabbix This package contains the zabbix plugin for uWSGI @@ -302,7 +302,7 @@ This package contains the zabbix plugin for uWSGI %package -n %{name}-alarm-curl Summary: uWSGI - Curl alarm plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, libcurl +Requires: %{name}-plugin-common = %{version}-%{release}, libcurl %description -n %{name}-alarm-curl This package contains the alarm_curl alarm plugin for uWSGI @@ -310,7 +310,7 @@ This package contains the alarm_curl alarm plugin for uWSGI %package -n %{name}-alarm-xmpp Summary: uWSGI - Curl alarm plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, gloox +Requires: %{name}-plugin-common = %{version}-%{release}, gloox %description -n %{name}-alarm-xmpp This package contains the alarm_xmpp alarm plugin for uWSGI @@ -320,7 +320,7 @@ This package contains the alarm_xmpp alarm plugin for uWSGI %package -n %{name}-transformation-chunked Summary: uWSGI - Chunked Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-router-uwsgi +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} %description -n %{name}-transformation-chunked This package contains the transformation_chunked plugin for uWSGI @@ -328,7 +328,7 @@ This package contains the transformation_chunked plugin for uWSGI %package -n %{name}-transformation-gzip Summary: uWSGI - GZip Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-router-uwsgi +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} %description -n %{name}-transformation-gzip This package contains the transformation_gzip plugin for uWSGI @@ -336,7 +336,7 @@ This package contains the transformation_gzip plugin for uWSGI %package -n %{name}-transformation-offload Summary: uWSGI - Off-Load Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-router-uwsgi +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} %description -n %{name}-transformation-offload This package contains the transformation_offload plugin for uWSGI @@ -344,7 +344,7 @@ This package contains the transformation_offload plugin for uWSGI %package -n %{name}-transformation-template Summary: uWSGI - Template Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-router-uwsgi +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} %description -n %{name}-transformation-template This package contains the transformation_template plugin for uWSGI @@ -352,7 +352,7 @@ This package contains the transformation_template plugin for uWSGI %package -n %{name}-transformation-tofile Summary: uWSGI - ToFile Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-router-uwsgi +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} %description -n %{name}-transformation-tofile This package contains the transformation_tofile plugin for uWSGI @@ -360,7 +360,7 @@ This package contains the transformation_tofile plugin for uWSGI %package -n %{name}-transformation-toupper Summary: uWSGI - ToUpper Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-transformation-toupper This package contains the transformation_toupper plugin for uWSGI @@ -370,7 +370,7 @@ This package contains the transformation_toupper plugin for uWSGI %package -n %{name}-log-encoder-msgpack Summary: uWSGI - msgpack log encoder plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-log-encoder-msgpack This package contains the msgpack log encoder plugin for uWSGI @@ -378,7 +378,7 @@ This package contains the msgpack log encoder plugin for uWSGI %package -n %{name}-logger-crypto Summary: uWSGI - logcrypto logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-logger-crypto This package contains the logcrypto logger plugin for uWSGI @@ -386,7 +386,7 @@ This package contains the logcrypto logger plugin for uWSGI %package -n %{name}-logger-file Summary: uWSGI - logfile logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-loggers <= 1.9.8-1 Provides: %{name}-loggers = %{version}-%{release} @@ -396,7 +396,7 @@ This package contains the logfile logger plugin for uWSGI %package -n %{name}-logger-graylog2 Summary: uWSGI - Graylog2 logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, zlib +Requires: %{name}-plugin-common = %{version}-%{release}, zlib %description -n %{name}-logger-graylog2 This package contains the graylog2 logger plugin for uWSGI @@ -405,7 +405,7 @@ This package contains the graylog2 logger plugin for uWSGI %package -n %{name}-logger-mongodb Summary: uWSGI - mongodblog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-loggers <= 1.9.8-1 Provides: %{name}-loggers = %{version}-%{release} @@ -416,7 +416,7 @@ This package contains the mongodblog logger plugin for uWSGI %package -n %{name}-logger-pipe Summary: uWSGI - logpipe logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-logger-pipe This package contains the logcrypto logger plugin for uWSGI @@ -424,7 +424,7 @@ This package contains the logcrypto logger plugin for uWSGI %package -n %{name}-logger-redis Summary: uWSGI - redislog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-loggers <= 1.9.8-1 Provides: %{name}-loggers = %{version}-%{release} @@ -434,7 +434,7 @@ This package contains the redislog logger plugin for uWSGI %package -n %{name}-logger-rsyslog Summary: uWSGI - rsyslog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 Provides: %{name}-plugin-rsyslog = %{version}-%{release} @@ -444,7 +444,7 @@ This package contains the rsyslog logger plugin for uWSGI %package -n %{name}-logger-socket Summary: uWSGI - logsocket logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-loggers <= 1.9.8-1 Provides: %{name}-loggers = %{version}-%{release} @@ -454,7 +454,7 @@ This package contains the logsocket logger plugin for uWSGI %package -n %{name}-logger-syslog Summary: uWSGI - syslog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 Provides: %{name}-plugin-syslog = %{version}-%{release} @@ -465,7 +465,7 @@ This package contains the syslog logger plugin for uWSGI %package -n %{name}-logger-systemd Summary: uWSGI - systemd journal logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-logger-systemd This package contains the systemd journal logger plugin for uWSGI @@ -475,7 +475,7 @@ This package contains the systemd journal logger plugin for uWSGI %package -n %{name}-logger-zeromq Summary: uWSGI - ZeroMQ logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, zeromq +Requires: %{name}-plugin-common = %{version}-%{release}, zeromq %description -n %{name}-logger-zeromq This package contains the ZeroMQ logger plugin for uWSGI @@ -486,7 +486,7 @@ This package contains the ZeroMQ logger plugin for uWSGI %package -n %{name}-plugin-airbrake Summary: uWSGI - Plugin for AirBrake support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libcurl +Requires: %{name}-plugin-common = %{version}-%{release}, libcurl %description -n %{name}-plugin-airbrake This package contains the airbrake plugin for uWSGI @@ -494,7 +494,7 @@ This package contains the airbrake plugin for uWSGI %package -n %{name}-plugin-cache Summary: uWSGI - Plugin for cache support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-cache This package contains the cache plugin for uWSGI @@ -502,7 +502,7 @@ This package contains the cache plugin for uWSGI %package -n %{name}-plugin-carbon Summary: uWSGI - Plugin for Carbon/Graphite support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-carbon This package contains the Carbon plugin for uWSGI (to use in graphite) @@ -511,7 +511,7 @@ This package contains the Carbon plugin for uWSGI (to use in graphite) %package -n %{name}-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-psgi, perl-Coro +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-psgi = %{version}-%{release}, perl-Coro %description -n %{name}-plugin-coroae This package contains the coroae plugin for uWSGI @@ -520,7 +520,7 @@ This package contains the coroae plugin for uWSGI %package -n %{name}-plugin-cplusplus Summary: uWSGI - Plugin for C++ support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libstdc++ +Requires: %{name}-plugin-common = %{version}-%{release}, libstdc++ %description -n %{name}-plugin-cplusplus This package contains the cplusplus plugin for uWSGI @@ -528,7 +528,7 @@ This package contains the cplusplus plugin for uWSGI %package -n %{name}-plugin-curl-cron Summary: uWSGI - Plugin for CURL Cron support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libcurl +Requires: %{name}-plugin-common = %{version}-%{release}, libcurl %description -n %{name}-plugin-curl-cron This package contains the curl_cron plugin for uWSGI @@ -536,7 +536,7 @@ This package contains the curl_cron plugin for uWSGI %package -n %{name}-plugin-dumbloop Summary: uWSGI - Plugin for Dumb Loop support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-dumbloop This package contains the dumbloop plugin for uWSGI @@ -544,7 +544,7 @@ This package contains the dumbloop plugin for uWSGI %package -n %{name}-plugin-dummy Summary: uWSGI - Plugin for Dummy support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-dummy This package contains the dummy plugin for uWSGI @@ -552,7 +552,7 @@ This package contains the dummy plugin for uWSGI %package -n %{name}-plugin-fiber Summary: uWSGI - Plugin for Ruby Fiber support Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-rack +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-rack = %{version}-%{release} %description -n %{name}-plugin-fiber This package contains the fiber plugin for uWSGI @@ -560,7 +560,7 @@ This package contains the fiber plugin for uWSGI %package -n %{name}-plugin-gccgo Summary: uWSGI - Plugin for GoLang support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libgo +Requires: %{name}-plugin-common = %{version}-%{release}, libgo %description -n %{name}-plugin-gccgo This package contains the gccgo plugin for uWSGI @@ -568,7 +568,7 @@ This package contains the gccgo plugin for uWSGI %package -n %{name}-plugin-geoip Summary: uWSGI - Plugin for GeoIP support Group: System Environment/Daemons -Requires: %{name}-plugin-common, GeoIP +Requires: %{name}-plugin-common = %{version}-%{release}, GeoIP %description -n %{name}-plugin-geoip This package contains the geoip plugin for uWSGI @@ -576,7 +576,7 @@ This package contains the geoip plugin for uWSGI %package -n %{name}-plugin-gevent Summary: uWSGI - Plugin for GEvent support Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-python, libevent +Requires: %{name}-plugin-python = %{version}-%{release}, libevent %description -n %{name}-plugin-gevent This package contains the gevent plugin for uWSGI @@ -585,7 +585,7 @@ This package contains the gevent plugin for uWSGI %package -n %{name}-plugin-glusterfs Summary: uWSGI - Plugin for GlusterFS support Group: System Environment/Daemons -Requires: %{name}-plugin-common, glusterfs-api +Requires: %{name}-plugin-common = %{version}-%{release}, glusterfs-api %description -n %{name}-plugin-glusterfs This package contains the glusterfs plugin for uWSGI @@ -595,7 +595,7 @@ This package contains the glusterfs plugin for uWSGI %package -n %{name}-plugin-greenlet Summary: uWSGI - Plugin for Python Greenlet support Group: System Environment/Daemons -Requires: python-greenlet, %{name}-plugin-python, %{name}-plugin-common +Requires: python-greenlet, %{name}-plugin-python = %{version}-%{release} %description -n %{name}-plugin-greenlet This package contains the python greenlet plugin for uWSGI @@ -605,7 +605,7 @@ This package contains the python greenlet plugin for uWSGI %package -n %{name}-plugin-gridfs Summary: uWSGI - Plugin for GridFS support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libmongodb +Requires: %{name}-plugin-common = %{version}-%{release}, libmongodb %description -n %{name}-plugin-gridfs This package contains the gridfs plugin for uWSGI @@ -615,7 +615,7 @@ This package contains the gridfs plugin for uWSGI %package -n %{name}-plugin-jvm Summary: uWSGI - Plugin for JVM support Group: System Environment/Daemons -Requires: %{name}-plugin-common, java-headless, jpackage-utils +Requires: %{name}-plugin-common = %{version}-%{release}, java-headless, jpackage-utils %description -n %{name}-plugin-jvm This package contains the JVM plugin for uWSGI @@ -623,7 +623,7 @@ This package contains the JVM plugin for uWSGI %package -n %{name}-plugin-jwsgi Summary: uWSGI - Plugin for JWSGI support Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-jvm +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-jvm = %{version}-%{release} %description -n %{name}-plugin-jwsgi This package contains the jwsgi plugin for uWSGI @@ -632,7 +632,7 @@ This package contains the jwsgi plugin for uWSGI %package -n %{name}-plugin-ldap Summary: uWSGI - Plugin for LDAP support Group: System Environment/Daemons -Requires: %{name}-plugin-common, openldap +Requires: %{name}-plugin-common = %{version}-%{release}, openldap %description -n %{name}-plugin-ldap This package contains the ldap plugin for uWSGI @@ -640,7 +640,7 @@ This package contains the ldap plugin for uWSGI %package -n %{name}-plugin-lua Summary: uWSGI - Plugin for LUA support Group: System Environment/Daemons -Requires: lua, %{name}-plugin-common +Requires: lua, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-lua This package contains the lua plugin for uWSGI @@ -649,7 +649,7 @@ This package contains the lua plugin for uWSGI %package -n %{name}-plugin-mongrel2 Summary: uWSGI - Plugin for Mongrel2 support Group: System Environment/Daemons -Requires: %{name}-plugin-common, zeromq +Requires: %{name}-plugin-common = %{version}-%{release}, zeromq %description -n %{name}-plugin-mongrel2 This package contains the mongrel2 plugin for uWSGI @@ -659,7 +659,7 @@ This package contains the mongrel2 plugin for uWSGI %package -n %{name}-plugin-mono Summary: uWSGI - Plugin for Mono / .NET support Group: System Environment/Daemons -Requires: %{name}-plugin-common, mono-web +Requires: %{name}-plugin-common = %{version}-%{release}, mono-web %description -n %{name}-plugin-mono This package contains the mono plugin for uWSGI @@ -668,7 +668,7 @@ This package contains the mono plugin for uWSGI %package -n %{name}-plugin-nagios Summary: uWSGI - Plugin for Nagios support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-nagios This package contains the nagios plugin for uWSGI @@ -676,7 +676,7 @@ This package contains the nagios plugin for uWSGI %package -n %{name}-plugin-notfound Summary: uWSGI - Plugin for notfound support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-notfound This package contains the notfound plugin for uWSGI @@ -684,7 +684,7 @@ This package contains the notfound plugin for uWSGI %package -n %{name}-plugin-pam Summary: uWSGI - Plugin for PAM support Group: System Environment/Daemons -Requires: %{name}-plugin-common, pam +Requires: %{name}-plugin-common = %{version}-%{release}, pam %description -n %{name}-plugin-pam This package contains the PAM plugin for uWSGI @@ -692,7 +692,7 @@ This package contains the PAM plugin for uWSGI %package -n %{name}-plugin-php Summary: uWSGI - Plugin for PHP support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-php This package contains the PHP plugin for uWSGI @@ -701,7 +701,7 @@ This package contains the PHP plugin for uWSGI %package -n %{name}-plugin-psgi Summary: uWSGI - Plugin for PSGI support Group: System Environment/Daemons -Requires: perl-PSGI, %{name}-plugin-common +Requires: perl-PSGI, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-psgi This package contains the PSGI plugin for uWSGI @@ -710,7 +710,7 @@ This package contains the PSGI plugin for uWSGI %package -n %{name}-plugin-pty Summary: uWSGI - Plugin for PTY support Group: System Environment/Daemons -Requires: python, %{name}-plugin-common +Requires: python, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-pty This package contains the pty plugin for uWSGI @@ -718,7 +718,7 @@ This package contains the pty plugin for uWSGI %package -n %{name}-plugin-python Summary: uWSGI - Plugin for Python support Group: System Environment/Daemons -Requires: python, %{name}-plugin-common +Requires: python, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-python This package contains the python plugin for uWSGI @@ -726,7 +726,7 @@ This package contains the python plugin for uWSGI %package -n %{name}-plugin-python3 Summary: uWSGI - Plugin for Python 3 support Group: System Environment/Daemons -Requires: python%{python3_pkgversion}, %{name}-plugin-common +Requires: python%{python3_pkgversion}, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-python3 This package contains the Python 3 plugin for uWSGI @@ -734,7 +734,7 @@ This package contains the Python 3 plugin for uWSGI %package -n %{name}-plugin-rack Summary: uWSGI - Ruby rack plugin Group: System Environment/Daemons -Requires: rubygem-rack, %{name}-plugin-common +Requires: rubygem-rack, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-rack This package contains the rack plugin for uWSGI @@ -742,7 +742,7 @@ This package contains the rack plugin for uWSGI %package -n %{name}-plugin-rbthreads Summary: uWSGI - Ruby native threads support plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, ruby +Requires: %{name}-plugin-common = %{version}-%{release}, ruby %description -n %{name}-plugin-rbthreads This package contains the rbthreads plugin for uWSGI @@ -751,7 +751,7 @@ This package contains the rbthreads plugin for uWSGI %package -n %{name}-plugin-ring Summary: uWSGI - Clojure/Ring request handler support plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, %{name}-plugin-jvm, clojure +Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-jvm = %{version}-%{release}, clojure %description -n %{name}-plugin-ring This package contains the ring plugin for uWSGI @@ -760,7 +760,7 @@ This package contains the ring plugin for uWSGI %package -n %{name}-plugin-rpc Summary: uWSGI - Plugin for RPC support Group: System Environment/Daemons -Requires: rrdtool, %{name}-plugin-common +Requires: rrdtool, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-rpc This package contains the RPC plugin for uWSGI @@ -768,7 +768,7 @@ This package contains the RPC plugin for uWSGI %package -n %{name}-plugin-rrdtool Summary: uWSGI - Plugin for RRDTool support Group: System Environment/Daemons -Requires: rrdtool, %{name}-plugin-common +Requires: rrdtool, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-rrdtool This package contains the RRD Tool plugin for uWSGI @@ -776,7 +776,7 @@ This package contains the RRD Tool plugin for uWSGI %package -n %{name}-plugin-ruby Summary: uWSGI - Plugin for Ruby support Group: System Environment/Daemons -Requires: ruby, %{name}-plugin-common +Requires: ruby, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-ruby This package contains the ruby19 plugin for uWSGI @@ -784,7 +784,7 @@ This package contains the ruby19 plugin for uWSGI %package -n %{name}-plugin-spooler Summary: uWSGI - Plugin for Remote Spooling support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-spooler This package contains the spooler plugin for uWSGI @@ -792,7 +792,7 @@ This package contains the spooler plugin for uWSGI %package -n %{name}-plugin-sqlite3 Summary: uWSGI - SQLite3 plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common, sqlite +Requires: %{name}-plugin-common = %{version}-%{release}, sqlite %description -n %{name}-plugin-sqlite3 This package contains the sqlite3 plugin for uWSGI @@ -800,7 +800,7 @@ This package contains the sqlite3 plugin for uWSGI %package -n %{name}-plugin-ssi Summary: uWSGI - Server Side Includes plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-ssi This package contains the ssi plugin for uWSGI @@ -808,7 +808,7 @@ This package contains the ssi plugin for uWSGI %package -n %{name}-plugin-tornado Summary: uWSGI - Plugin for Tornado support Group: System Environment/Daemons -Requires: %{name}-plugin-common, python-tornado +Requires: %{name}-plugin-common = %{version}-%{release}, python-tornado %description -n %{name}-plugin-tornado This package contains the tornado plugin for uWSGI @@ -816,7 +816,7 @@ This package contains the tornado plugin for uWSGI %package -n %{name}-plugin-tornado3 Summary: uWSGI - Plugin for Tornado/Python3 support Group: System Environment/Daemons -Requires: %{name}-plugin-common, python3-tornado +Requires: %{name}-plugin-common = %{version}-%{release}, python3-tornado %description -n %{name}-plugin-tornado3 This package contains the tornado (python v3) plugin for uWSGI @@ -824,7 +824,7 @@ This package contains the tornado (python v3) plugin for uWSGI %package -n %{name}-plugin-ugreen Summary: uWSGI - Plugin for uGreen support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-ugreen This package contains the uGreen plugin for uWSGI @@ -833,7 +833,7 @@ This package contains the uGreen plugin for uWSGI %package -n %{name}-plugin-v8 Summary: uWSGI - Plugin for v8 support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-v8 This package contains the v8 plugin for uWSGI @@ -842,7 +842,7 @@ This package contains the v8 plugin for uWSGI %package -n %{name}-plugin-webdav Summary: uWSGI - Plugin for WebDAV support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libattr +Requires: %{name}-plugin-common = %{version}-%{release}, libattr %description -n %{name}-plugin-webdav This package contains the webdav plugin for uWSGI @@ -850,7 +850,7 @@ This package contains the webdav plugin for uWSGI %package -n %{name}-plugin-xattr Summary: uWSGI - Plugin for Extra Attributes support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libattr +Requires: %{name}-plugin-common = %{version}-%{release}, libattr %description -n %{name}-plugin-xattr This package contains the xattr plugin for uWSGI @@ -858,7 +858,7 @@ This package contains the xattr plugin for uWSGI %package -n %{name}-plugin-xslt Summary: uWSGI - Plugin for XSLT transformation support Group: System Environment/Daemons -Requires: %{name}-plugin-common, libxslt +Requires: %{name}-plugin-common = %{version}-%{release}, libxslt %description -n %{name}-plugin-xslt This package contains the xslt plugin for uWSGI @@ -866,7 +866,7 @@ This package contains the xslt plugin for uWSGI %package -n %{name}-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-zergpool This package contains the zergpool plugin for uWSGI @@ -876,7 +876,7 @@ This package contains the zergpool plugin for uWSGI %package -n %{name}-router-access Summary: uWSGI - Plugin for router_access router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-access @@ -885,7 +885,7 @@ This package contains the router_access plugin for uWSGI %package -n %{name}-router-basicauth Summary: uWSGI - Plugin for Basic Auth router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-basicauth @@ -894,7 +894,7 @@ This package contains the basicauth plugin for uWSGI %package -n %{name}-router-cache Summary: uWSGI - Plugin for Cache router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-cache @@ -903,7 +903,7 @@ This package contains the cache router plugin for uWSGI %package -n %{name}-router-expires Summary: uWSGI - Plugin for Expires router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-expires @@ -912,7 +912,7 @@ This package contains the expires router plugin for uWSGI %package -n %{name}-router-fast Summary: uWSGI - Plugin for FastRouter support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-plugin-fastrouter <= 2.0.6 Provides: %{name}-plugin-fastrouter = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} @@ -923,7 +923,7 @@ This package contains the fastrouter (proxy) plugin for uWSGI %package -n %{name}-router-forkpty Summary: uWSGI - Plugin for ForkPTY router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-router-forkpty This package contains the ForkPTY router plugin for uWSGI @@ -931,7 +931,7 @@ This package contains the ForkPTY router plugin for uWSGI %package -n %{name}-router-hash Summary: uWSGI - Plugin for Hash router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-hash @@ -940,7 +940,7 @@ This package contains the hash router plugin for uWSGI %package -n %{name}-router-http Summary: uWSGI - Plugin for HTTP router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-http @@ -949,7 +949,7 @@ This package contains the http router plugin for uWSGI %package -n %{name}-router-memcached Summary: uWSGI - Plugin for Memcached router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-memcached @@ -958,7 +958,7 @@ This package contains the memcached router plugin for uWSGI %package -n %{name}-router-metrics Summary: uWSGI - Plugin for Metrics router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-router-metrics This package contains the metrics router plugin for uWSGI @@ -966,7 +966,7 @@ This package contains the metrics router plugin for uWSGI %package -n %{name}-router-radius Summary: uWSGI - Plugin for Radius router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-router-radius This package contains the metrics router plugin for uWSGI @@ -974,7 +974,7 @@ This package contains the metrics router plugin for uWSGI %package -n %{name}-router-raw Summary: uWSGI - Plugin for Raw Router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-plugin-rawrouter <= 2.0.6 Provides: %{name}-plugin-rawrouter = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} @@ -985,7 +985,7 @@ This package contains the Raw router plugin for uWSGI %package -n %{name}-router-redirect Summary: uWSGI - Plugin for Redirect router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-redirect @@ -994,7 +994,7 @@ This package contains the redirect router plugin for uWSGI %package -n %{name}-router-redis Summary: uWSGI - Plugin for Redis router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-redis @@ -1003,7 +1003,7 @@ This package contains the redis router plugin for uWSGI %package -n %{name}-router-rewrite Summary: uWSGI - Plugin for Rewrite router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-rewrite @@ -1012,7 +1012,7 @@ This package contains the rewrite router plugin for uWSGI %package -n %{name}-router-spnego Summary: uWSGI - Plugin for SPNEgo router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-router-spnego This package contains the spnego router plugin for uWSGI @@ -1020,7 +1020,7 @@ This package contains the spnego router plugin for uWSGI %package -n %{name}-router-ssl Summary: uWSGI - Plugin for SSL router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Obsoletes: %{name}-plugin-sslrouter <= 2.0.6 Provides: %{name}-plugin-sslrouter = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} @@ -1031,7 +1031,7 @@ This package contains the SSL router plugin for uWSGI %package -n %{name}-router-static Summary: uWSGI - Plugin for Static router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-static @@ -1040,7 +1040,7 @@ This package contains the Static router plugin for uWSGI %package -n %{name}-router-tuntap Summary: uWSGI - Plugin for TUN/TAP router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-router-tuntap This package contains the tuntap router plugin for uWSGI @@ -1048,7 +1048,7 @@ This package contains the tuntap router plugin for uWSGI %package -n %{name}-router-uwsgi Summary: uWSGI - Plugin for uWSGI router support Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-uwsgi @@ -1057,7 +1057,7 @@ This package contains the uwsgi router plugin for uWSGI %package -n %{name}-router-xmldir Summary: uWSGI - Plugin for XMLDir router rupport Group: System Environment/Daemons -Requires: %{name}-plugin-common +Requires: %{name}-plugin-common = %{version}-%{release} Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-xmldir @@ -1068,7 +1068,7 @@ This package contains the xmldir router plugin for uWSGI %package -n mod_proxy_%{name} Summary: uWSGI - Apache2 proxy module Group: System Environment/Daemons -Requires: %{name}, httpd +Requires: %{name} = %{version}-%{release}, httpd %description -n mod_proxy_%{name} Fully Apache API compliant proxy module From 2de2fb80347c96884ec30f88025327870a107ffc Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 5 Oct 2016 13:15:52 -0500 Subject: [PATCH 231/427] Updated to latest upstream stable --- uwsgi.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 213d024..01e3ea6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 13.1 +%global releasenumber 14 # Documentation sources: -%global commit 032608205f7dc73c651de6166bd874be859cd7fd +%global commit f6eacc586fda4aedf83ed29aea38087dff8f50f2 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 0%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions From 2fc5176ffb52522a2e3dd916ff53db7ce8b3396a Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 5 Oct 2016 13:27:51 -0500 Subject: [PATCH 232/427] Updated source files --- .gitignore | 2 ++ sources | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 381ef6c..a651622 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,5 @@ /uwsgi-2.0.12.tar.gz /uwsgi-2.0.13.1.tar.gz /uwsgi-docs-0326082.tar.gz +/uwsgi-2.0.14.tar.gz +/uwsgi-docs-f6eacc5.tar.gz diff --git a/sources b/sources index 70d623a..c665408 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -e9ec5b2b296ce21b3787e0579d02bade uwsgi-2.0.13.1.tar.gz -5036553cd529ac5d24940ef2e3a7481f uwsgi-docs-0326082.tar.gz +d4b2c7db274dc20be54a977c9b040b7e uwsgi-2.0.14.tar.gz +baf6ac9872962d110435fe0363ce2217 uwsgi-docs-f6eacc5.tar.gz From c52067e70bce0a7fc3430c64331183860764acdd Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 5 Oct 2016 13:28:49 -0500 Subject: [PATCH 233/427] Bumped release --- uwsgi.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 01e3ea6..aded07b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 0%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1658,6 +1658,13 @@ fi %changelog +* Wed Oct 05 2016 Jorge A Gallegos - 2.0.14-1 +- Updated to latest upstream stable (Jorge Gallegos) +- Make subpackage interdependencies versioned for bz #1368488 (Jorge Gallegos) +- chmod uwsgi sock file for bz #1338038 (Jorge Gallegos) +- greenlet and gevent depend on python bz #1325524 (Jorge Gallegos) +- config(noreplace) for uwsgi.ini bz #1339558 (Jorge Gallegos) + * Mon Aug 01 2016 Carl George - 2.0.13.1-2 - Build against v8-314 on F25+ rhbz#1339293 - Own /usr/src/uwsgi rhbz#1351796 From 00ac8d4b16d81fe9a7ecbefa340ebc5b9138349e Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 30 Nov 2016 11:02:50 -0600 Subject: [PATCH 234/427] uwsgi is not yet OpenSSL 1.1 compatible, build against compat-openssl10 on F26+ see also https://github.com/unbit/uwsgi/issues/1395 --- uwsgi.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index aded07b..7de6850 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -146,7 +146,12 @@ BuildRequires: python-greenlet-devel BuildRequires: glusterfs-devel, glusterfs-api-devel %endif BuildRequires: lua-devel, ruby, pcre-devel -BuildRequires: php-devel, php-embedded, libedit-devel, openssl-devel +BuildRequires: php-devel, php-embedded, libedit-devel +%if 0%{?fedora} >= 26 +BuildRequires: compat-openssl10-devel +%else +BuildRequires: openssl-devel +%endif BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel From c2c37c071f635063bde2ec0b2fd8a8445b31acca Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 30 Nov 2016 12:15:25 -0600 Subject: [PATCH 235/427] php plugin requires krb5 headers to build --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 7de6850..8f2553a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -146,7 +146,7 @@ BuildRequires: python-greenlet-devel BuildRequires: glusterfs-devel, glusterfs-api-devel %endif BuildRequires: lua-devel, ruby, pcre-devel -BuildRequires: php-devel, php-embedded, libedit-devel +BuildRequires: php-devel, php-embedded, libedit-devel, krb5-devel %if 0%{?fedora} >= 26 BuildRequires: compat-openssl10-devel %else From c57fecad846fc5b62d401a3a0c51ff0957d78819 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 30 Nov 2016 12:35:39 -0600 Subject: [PATCH 236/427] bump release --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 8f2553a..c32f398 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,7 +115,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1663,6 +1663,10 @@ fi %changelog +* Wed Nov 30 2016 Carl George - 2.0.14-2 +- uwsgi is not yet OpenSSL 1.1 compatible, build against compat-openssl10 on F26+ (Carl George) +- php plugin requires krb5 headers to build (Carl George) + * Wed Oct 05 2016 Jorge A Gallegos - 2.0.14-1 - Updated to latest upstream stable (Jorge Gallegos) - Make subpackage interdependencies versioned for bz #1368488 (Jorge Gallegos) From eda7982c7967bd0b7588d4d613818027af185a5b Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 21 Dec 2016 03:30:42 +0000 Subject: [PATCH 237/427] perl cleanup --- uwsgi.spec | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index c32f398..072b47d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -135,7 +135,7 @@ Patch3: uwsgi_fix_lua.patch Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel -BuildRequires: libyaml-devel, perl-devel, ruby-devel, perl-ExtUtils-Embed +BuildRequires: libyaml-devel, ruby-devel %if %{with python3} BuildRequires: python%{python3_pkgversion}-devel %endif @@ -160,6 +160,7 @@ BuildRequires: GeoIP-devel, libevent-devel, zlib-devel BuildRequires: openldap-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel %if %{with perl} +BuildRequires: perl-devel, perl-ExtUtils-Embed BuildRequires: perl-Coro %endif %if %{with zeromq} @@ -513,6 +514,14 @@ Requires: %{name}-plugin-common = %{version}-%{release} This package contains the Carbon plugin for uWSGI (to use in graphite) %if %{with perl} +%package -n %{name}-plugin-psgi +Summary: uWSGI - Plugin for PSGI support +Group: System Environment/Daemons +Requires: perl-PSGI, %{name}-plugin-common = %{version}-%{release} + +%description -n %{name}-plugin-psgi +This package contains the PSGI plugin for uWSGI + %package -n %{name}-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons @@ -702,16 +711,6 @@ Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-php This package contains the PHP plugin for uWSGI -%if %{with perl} -%package -n %{name}-plugin-psgi -Summary: uWSGI - Plugin for PSGI support -Group: System Environment/Daemons -Requires: perl-PSGI, %{name}-plugin-common = %{version}-%{release} - -%description -n %{name}-plugin-psgi -This package contains the PSGI plugin for uWSGI -%endif - %package -n %{name}-plugin-pty Summary: uWSGI - Plugin for PTY support Group: System Environment/Daemons @@ -1428,6 +1427,9 @@ fi %{_libdir}/%{name}/carbon_plugin.so %if %{with perl} +%files -n %{name}-plugin-psgi +%{_libdir}/%{name}/psgi_plugin.so + %files -n %{name}-plugin-coroae %{_libdir}/%{name}/coroae_plugin.so %endif @@ -1514,11 +1516,6 @@ fi %files -n %{name}-plugin-php %{_libdir}/%{name}/php_plugin.so -%if %{with perl} -%files -n %{name}-plugin-psgi -%{_libdir}/%{name}/psgi_plugin.so -%endif - %files -n %{name}-plugin-pty %{_libdir}/%{name}/pty_plugin.so From 864a57ae9ad44804047cde8aa88126e68059cf28 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 21 Dec 2016 03:36:01 +0000 Subject: [PATCH 238/427] enable -plugin-psgi on EL7, but leave -plugin-coroae disabled for now --- uwsgi.spec | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 072b47d..2626f59 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -69,7 +69,8 @@ %bcond_with tornado3 # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 -# el7 doesn't have perl-PSGI +# el6 doesn't have perl-PSGI +# el6 does have perl-Coro %bcond_with perl # this fails in el not sure why %bcond_with gridfs @@ -95,8 +96,9 @@ %bcond_with zeromq # el7 doesn't have greenlet %bcond_with greenlet +# el7 does have perl-PSGI # el7 doesn't have perl-Coro -%bcond_with perl +%bcond_without perl # el7 can now build glusterfs but only on x86_64 %ifnarch x86_64 %bcond_with glusterfs @@ -161,8 +163,10 @@ BuildRequires: openldap-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel %if %{with perl} BuildRequires: perl-devel, perl-ExtUtils-Embed +%if 0%{?fedora} >= 15 BuildRequires: perl-Coro %endif +%endif %if %{with zeromq} BuildRequires: zeromq-devel %endif @@ -522,6 +526,7 @@ Requires: perl-PSGI, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-psgi This package contains the PSGI plugin for uWSGI +%if 0%{?fedora} >= 15 %package -n %{name}-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons @@ -530,6 +535,7 @@ Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-psgi = % %description -n %{name}-plugin-coroae This package contains the coroae plugin for uWSGI %endif +%endif %package -n %{name}-plugin-cplusplus Summary: uWSGI - Plugin for C++ support @@ -1149,8 +1155,10 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/tuntap fedora %endif %if %{with perl} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/coroae fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/psgi fedora +%if 0%{?fedora} >= 15 +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/coroae fedora +%endif %endif %if %{with zeromq} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/logzmq fedora @@ -1430,9 +1438,11 @@ fi %files -n %{name}-plugin-psgi %{_libdir}/%{name}/psgi_plugin.so +%if 0%{?fedora} >= 15 %files -n %{name}-plugin-coroae %{_libdir}/%{name}/coroae_plugin.so %endif +%endif %files -n %{name}-plugin-cplusplus %{_libdir}/%{name}/cplusplus_plugin.so From 67d3fd5713da13e9eeaca787b9795bc6eb2a883f Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 21 Dec 2016 03:38:30 +0000 Subject: [PATCH 239/427] bump release --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2626f59..44b2e3a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1670,6 +1670,9 @@ fi %changelog +* Tue Dec 20 2016 Carl George - 2.0.14-3 +- Enable plugin-psgi on EL7 + * Wed Nov 30 2016 Carl George - 2.0.14-2 - uwsgi is not yet OpenSSL 1.1 compatible, build against compat-openssl10 on F26+ (Carl George) - php plugin requires krb5 headers to build (Carl George) From 1117945d1b67bbc7cb13859d79bab264e97d31f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 22 Dec 2016 13:08:41 +0100 Subject: [PATCH 240/427] Rebuild for Python 3.6 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 44b2e3a..40bb05c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1670,6 +1670,9 @@ fi %changelog +* Thu Dec 22 2016 Miro Hrončok - 2.0.14-4 +- Rebuild for Python 3.6 + * Tue Dec 20 2016 Carl George - 2.0.14-3 - Enable plugin-psgi on EL7 From 7e5aad0774b90d0eeebcb5c18d840a5844d619a5 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Fri, 13 Jan 2017 12:40:44 +0900 Subject: [PATCH 241/427] F-26: rebuild for ruby24 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 40bb05c..ff5842f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1670,6 +1670,9 @@ fi %changelog +* Fri Jan 13 2017 Mamoru TASAKA - 2.0.14-5 +- F-26: rebuild for ruby24 + * Thu Dec 22 2016 Miro Hrončok - 2.0.14-4 - Rebuild for Python 3.6 From dff9522ddf0a1db2292430f5f190e9866a8659f8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 13 Jan 2017 16:45:25 -0600 Subject: [PATCH 242/427] Got tired of this giant string Took me a look at the ConfigParser docs to figure out this could be easily corrected. --- fedora.ini | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 73 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index a110f63..39c93ac 100644 --- a/fedora.ini +++ b/fedora.ini @@ -9,4 +9,76 @@ routing = auto ssl = auto malloc_implementation = libc embedded_plugins = corerouter, echo, ping -plugins = alarm_curl, alarm_xmpp, airbrake, cache, carbon, cgi, cplusplus, curl_cron, dumbloop, dummy, fastrouter, forkptyrouter, geoip, gevent, graylog2, http, ldap, logcrypto, logfile, logpipe, logsocket, lua, msgpack, nagios, notfound, pam, php, pty, python, rack, rawrouter, redislog, router_access, router_basicauth, router_cache, router_expires, router_hash, router_http, router_memcached, router_metrics, router_radius, router_redirect, router_redis, router_rewrite, router_spnego, router_static, router_uwsgi, router_xmldir, rpc, rrdtool, rsyslog, ruby19, spooler, sqlite3, ssi, sslrouter, stats_pusher_file, stats_pusher_socket, stats_pusher_statsd, syslog, tornado, transformation_chunked, transformation_gzip, transformation_offload, transformation_template, transformation_tofile, transformation_toupper, ugreen, webdav, xattr, xslt, zabbix, zergpool +plugins = airbrake, + alarm_curl, + alarm_xmpp, + cache, + carbon, + cgi, + cplusplus, + curl_cron, + dumbloop, + dummy, + fastrouter, + forkptyrouter, + geoip, + gevent, + graylog2, + http, + ldap, + logcrypto, + logfile, + logpipe, + logsocket, + lua, + msgpack, + nagios, + notfound, + pam, + php, + pty, + python, + rack, + rawrouter, + redislog, + router_access, + router_basicauth, + router_cache, + router_expires, + router_hash, + router_http, + router_memcached, + router_metrics, + router_radius, + router_redirect, + router_redis, + router_rewrite, + router_spnego, + router_static, + router_uwsgi, + router_xmldir, + rpc, + rrdtool, + rsyslog, + ruby19, + spooler, + sqlite3, + ssi, + sslrouter, + stats_pusher_file, + stats_pusher_socket, + stats_pusher_statsd, + syslog, + tornado, + transformation_chunked, + transformation_gzip, + transformation_offload, + transformation_template, + transformation_tofile, + transformation_toupper, + ugreen, + webdav, + xattr, + xslt, + zabbix, + zergpool From ee4151c79ef8fb7e43a097eddc7da14838e6f7b2 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 13 Jan 2017 16:46:12 -0600 Subject: [PATCH 243/427] Adding the cheaper_busyness plugin --- fedora.ini | 1 + uwsgi.spec | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/fedora.ini b/fedora.ini index 39c93ac..864ab2f 100644 --- a/fedora.ini +++ b/fedora.ini @@ -15,6 +15,7 @@ plugins = airbrake, cache, carbon, cgi, + cheaper_busyness, cplusplus, curl_cron, dumbloop, diff --git a/uwsgi.spec b/uwsgi.spec index ff5842f..889bde6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -537,6 +537,14 @@ This package contains the coroae plugin for uWSGI %endif %endif +%package -n %{name}-plugin-cheaper-busyness +Summary: uWSGI - Plugin for Cheaper Busyness algos +Group: System Environment/Daemons +Requires: %{name}-plugin-common = %{version}-%{release} + +%description -n %{name}-plugin-cheaper-busyness +This package contains the cheaper_busyness plugin for uWSGI + %package -n %{name}-plugin-cplusplus Summary: uWSGI - Plugin for C++ support Group: System Environment/Daemons @@ -1444,6 +1452,9 @@ fi %endif %endif +%files -n %{name}-plugin-cheaper-busyness +%{_libdir}/%{name}/cheaper_busyness_plugin.so + %files -n %{name}-plugin-cplusplus %{_libdir}/%{name}/cplusplus_plugin.so From c0f03ba865f3dbc9f53a0b1909444ea35333f332 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Fri, 13 Jan 2017 16:51:44 -0600 Subject: [PATCH 244/427] Bumping for release --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 889bde6..a308e7b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1681,6 +1681,10 @@ fi %changelog +* Fri Jan 13 2017 Jorge A Gallegos - 2.0.14-6 +- Adding the cheaper_busyness plugin (Jorge Gallegos) +- Got tired of this giant string (Jorge Gallegos) + * Fri Jan 13 2017 Mamoru TASAKA - 2.0.14-5 - F-26: rebuild for ruby24 From 5de9eb8d67c17e30e5e273583ce88f2970a80349 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 15 Jan 2017 02:26:45 +0900 Subject: [PATCH 245/427] Workaround for build issue on arm(32): explicitly write java-1.8.0-openjdk-headless as BR not to use java-1.8.0-openjdk-aarch32 which does not provide server/libjvm.so --- uwsgi.spec | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a308e7b..9dc28b7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -155,6 +155,13 @@ BuildRequires: compat-openssl10-devel BuildRequires: openssl-devel %endif BuildRequires: bzip2-devel, gmp-devel, pam-devel +%ifarch %arm +# FIXME: explicitly specify java package not to use +# java-1.8.0-openjdk-aarch32, which provides client/libjvm.so +# but not server/libjvm.so, which uwsgi requires +BuildRequires: java-1.8.0-openjdk-headless +BuildRequires: java-1.8.0-openjdk-devel +%endif BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel BuildRequires: gloox-devel, libstdc++-devel @@ -1681,6 +1688,11 @@ fi %changelog +* Sun Jan 15 2017 Mamoru TASAKA - 2.0.14-7 +- Workaround for build issue on arm(32): explicitly write + java-1.8.0-openjdk-headless as BR not to use java-1.8.0-openjdk-aarch32 + which does not provide server/libjvm.so + * Fri Jan 13 2017 Jorge A Gallegos - 2.0.14-6 - Adding the cheaper_busyness plugin (Jorge Gallegos) - Got tired of this giant string (Jorge Gallegos) From ff700575b38a49b463c7cc0fe8a5e4a58e34a4f6 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Sun, 5 Feb 2017 23:00:15 +0100 Subject: [PATCH 246/427] Rebuilt for libgo soname bump --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9dc28b7..e80106c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1688,6 +1688,9 @@ fi %changelog +* Sun Feb 05 2017 Kalev Lember - 2.0.14-8 +- Rebuilt for libgo soname bump + * Sun Jan 15 2017 Mamoru TASAKA - 2.0.14-7 - Workaround for build issue on arm(32): explicitly write java-1.8.0-openjdk-headless as BR not to use java-1.8.0-openjdk-aarch32 From fce59d6c4861697588158b7c52048772bd14b966 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 8 Feb 2017 07:49:25 -0600 Subject: [PATCH 247/427] Rebuild for boost soname bump --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e80106c..e32cf90 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1688,6 +1688,9 @@ fi %changelog +* Wed Feb 08 2017 Carl George - 2.0.14-9 +- Rebuild for boost soname bump + * Sun Feb 05 2017 Kalev Lember - 2.0.14-8 - Rebuilt for libgo soname bump From 7240cd33d4809b036d57c27885ef986b316c29b7 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Wed, 15 Feb 2017 17:41:24 +0100 Subject: [PATCH 248/427] Rebuild for brp-python-bytecompile Signed-off-by: Igor Gnatenko --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e32cf90..274db62 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1688,6 +1688,9 @@ fi %changelog +* Wed Feb 15 2017 Igor Gnatenko - 2.0.14-10 +- Rebuild for brp-python-bytecompile + * Wed Feb 08 2017 Carl George - 2.0.14-9 - Rebuild for boost soname bump From 3f332717e01684fc1417cd85737559faedf52478 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 20 Mar 2017 16:31:29 -0500 Subject: [PATCH 249/427] Add patch7 to add glib-2.0 pkg-config flags to mono build --- uwsgi.spec | 8 +++++++- uwsgi_fix_mono.patch | 15 +++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_mono.patch diff --git a/uwsgi.spec b/uwsgi.spec index 274db62..05fe284 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -136,6 +136,7 @@ Patch3: uwsgi_fix_lua.patch # https://github.com/unbit/uwsgi/issues/882 Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch +Patch7: uwsgi_fix_mono.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel %if %{with python3} @@ -184,7 +185,7 @@ BuildRequires: libgo-devel, gcc-go BuildRequires: systemd-devel, systemd-units %endif %if %{with mono} -BuildRequires: mono-devel, mono-web +BuildRequires: mono-devel, mono-web, glib2-devel %endif %if %{with v8} %if 0%{?fedora} >= 25 @@ -1121,6 +1122,9 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %if %{with v8} && 0%{?fedora} >= 25 %patch6 -p1 %endif +%if %{with mono} +%patch7 -p1 +%endif #disable plug-ins %if %{without mongodblibs} @@ -1688,6 +1692,8 @@ fi %changelog +- Add patch7 to add glib-2.0 pkg-config flags to mono build + * Wed Feb 15 2017 Igor Gnatenko - 2.0.14-10 - Rebuild for brp-python-bytecompile diff --git a/uwsgi_fix_mono.patch b/uwsgi_fix_mono.patch new file mode 100644 index 0000000..217eb68 --- /dev/null +++ b/uwsgi_fix_mono.patch @@ -0,0 +1,15 @@ +diff -Naurp a/plugins/mono/uwsgiplugin.py b/plugins/mono/uwsgiplugin.py +--- a/plugins/mono/uwsgiplugin.py 2016-10-03 03:16:59.000000000 -0500 ++++ b/plugins/mono/uwsgiplugin.py 2017-03-20 16:18:54.917935286 -0500 +@@ -1,9 +1,9 @@ + import os + NAME='mono' + +-CFLAGS = os.popen('pkg-config --cflags mono-2').read().rstrip().split() ++CFLAGS = os.popen('pkg-config --cflags mono-2 glib-2.0').read().rstrip().split() + LDFLAGS = [] +-LIBS = os.popen('pkg-config --libs mono-2').read().rstrip().split() ++LIBS = os.popen('pkg-config --libs mono-2 glib-2.0').read().rstrip().split() + GCC_LIST = ['mono_plugin'] + + if os.uname()[0] == 'Darwin': From 230ee196ed50db757d1c9ab26839e323e62913a6 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 20 Mar 2017 16:33:31 -0500 Subject: [PATCH 250/427] Filter uwgi plugins from automatic provides rhbz#1352089 --- uwsgi.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 05fe284..9555d78 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -216,6 +216,7 @@ Requires(preun): initscripts %filter_requires_in %{_usrsrc} %filter_provides_in %{_usrsrc} +%filter_provides_in %{_libdir}/uwsgi/.*\.so$ %filter_setup %description @@ -1693,6 +1694,7 @@ fi %changelog - Add patch7 to add glib-2.0 pkg-config flags to mono build +- Filter uwgi plugins from automatic provides rhbz#1352089 * Wed Feb 15 2017 Igor Gnatenko - 2.0.14-10 - Rebuild for brp-python-bytecompile From f5025779181822dc4d6240d8709f17a07431a17c Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 20 Mar 2017 16:37:28 -0500 Subject: [PATCH 251/427] bump release - Add patch7 to add glib-2.0 pkg-config flags to mono build - Filter uwgi plugins from automatic provides rhbz#1352089 --- uwsgi.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9555d78..59a530e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 10%{?dist} +Release: 11%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,7 @@ fi %changelog +* Mon Mar 20 2017 Carl George - 2.0.14-11 - Add patch7 to add glib-2.0 pkg-config flags to mono build - Filter uwgi plugins from automatic provides rhbz#1352089 From bcddaab88b5f7222b629875506a00f282518d1d2 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 18 May 2017 18:30:11 -0500 Subject: [PATCH 252/427] Updating sources to 2.0.15 --- .gitignore | 2 ++ sources | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index a651622..3172213 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,5 @@ /uwsgi-docs-0326082.tar.gz /uwsgi-2.0.14.tar.gz /uwsgi-docs-f6eacc5.tar.gz +/uwsgi-2.0.15.tar.gz +/uwsgi-docs-1610d37.tar.gz diff --git a/sources b/sources index c665408..721cdf0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -d4b2c7db274dc20be54a977c9b040b7e uwsgi-2.0.14.tar.gz -baf6ac9872962d110435fe0363ce2217 uwsgi-docs-f6eacc5.tar.gz +SHA512 (uwsgi-2.0.15.tar.gz) = cb3ce7dc9eb9806151b04b04dc80ac7204cb4ddadf295eea98d5ebbf3a8c02f4b0bfb9a0490997c5edf427e39d3073a2d5b4fe7bd8ec458b30c0aab8e1da9bef +SHA512 (uwsgi-docs-1610d37.tar.gz) = f7f7b1923c2a78c65f3d258db49e003ca34ff988f9e573b30c057b7814b38e24fd2f76ebc5117bd9c3caa12c8f846f06b9591b0e4f84785a96aaf7c041c9b976 From e5fcfa434238c99511e5de127c4b590ea7a5406e Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 18 May 2017 18:30:29 -0500 Subject: [PATCH 253/427] Bumping release to 2.0.15 --- uwsgi.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 59a530e..a052740 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,10 +1,10 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 14 +%global releasenumber 15 # Documentation sources: -%global commit f6eacc586fda4aedf83ed29aea38087dff8f50f2 +%global commit 1610d37413b3e9dd7aea9fcdd711d602ae909d25 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 11%{?dist} +Release: 0%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions From 52ea83aac01510615e30f72205605beab0b787bc Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Thu, 18 May 2017 18:32:21 -0500 Subject: [PATCH 254/427] Bumping release in spec file --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a052740..22b75ad 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 0%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,10 @@ fi %changelog +* Thu May 18 2017 Jorge A Gallegos - 2.0.15-1 +- Bumping release to 2.0.15 (Jorge Gallegos) +- Updating sources to 2.0.15 (Jorge Gallegos) + * Mon Mar 20 2017 Carl George - 2.0.14-11 - Add patch7 to add glib-2.0 pkg-config flags to mono build - Filter uwgi plugins from automatic provides rhbz#1352089 From 065fa3048cc0c8d3bd9c125edf501f5ee9394e93 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Sun, 4 Jun 2017 07:40:18 +0200 Subject: [PATCH 255/427] Perl 5.26 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 22b75ad..ed92302 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Sun Jun 04 2017 Jitka Plesnikova - 2.0.15-2 +- Perl 5.26 rebuild + * Thu May 18 2017 Jorge A Gallegos - 2.0.15-1 - Bumping release to 2.0.15 (Jorge Gallegos) - Updating sources to 2.0.15 (Jorge Gallegos) From 5fc8198aeb42fa5bbe0c4ff058afd7002645443c Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Fri, 7 Jul 2017 13:11:51 +0200 Subject: [PATCH 256/427] Rebuild due to bug in RPM (RHBZ #1468476) Signed-off-by: Igor Gnatenko --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ed92302..433eb9e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Fri Jul 07 2017 Igor Gnatenko - 2.0.15-3 +- Rebuild due to bug in RPM (RHBZ #1468476) + * Sun Jun 04 2017 Jitka Plesnikova - 2.0.15-2 - Perl 5.26 rebuild From 66e2aa4ef82d0e2444688ffdec52392908b3c484 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Fri, 21 Jul 2017 09:41:57 +0200 Subject: [PATCH 257/427] Rebuilt for Boost 1.64 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 433eb9e..a751988 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Fri Jul 21 2017 Kalev Lember - 2.0.15-4 +- Rebuilt for Boost 1.64 + * Fri Jul 07 2017 Igor Gnatenko - 2.0.15-3 - Rebuild due to bug in RPM (RHBZ #1468476) From 493a90e8c2322e0f270e2dbb88b57d0af0e0691d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 27 Jul 2017 21:07:52 +0000 Subject: [PATCH 258/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a751988..f730de0 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.15-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Fri Jul 21 2017 Kalev Lember - 2.0.15-4 - Rebuilt for Boost 1.64 From 4df00ea27241cb653f44837f96601bec069a4cec Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 3 Aug 2017 09:56:21 +0000 Subject: [PATCH 259/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index f730de0..5247018 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.15-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Thu Jul 27 2017 Fedora Release Engineering - 2.0.15-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From 6d32bbe5b0c08190463c14fa57d864649b5853ac Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 3 Oct 2017 12:42:51 +0200 Subject: [PATCH 260/427] rebuild for https://fedoraproject.org/wiki/Changes/php72 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 5247018..e7d4390 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Tue Oct 03 2017 Remi Collet - 2.0.15-7 +- rebuild for https://fedoraproject.org/wiki/Changes/php72 + * Thu Aug 03 2017 Fedora Release Engineering - 2.0.15-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From d6cc3b165ca9d4931471d6a25373b169713850ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sat, 20 Jan 2018 23:08:40 +0100 Subject: [PATCH 261/427] Rebuilt for switch to libxcrypt --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e7d4390..ffaad04 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Sat Jan 20 2018 Björn Esser - 2.0.15-8 +- Rebuilt for switch to libxcrypt + * Tue Oct 03 2017 Remi Collet - 2.0.15-7 - rebuild for https://fedoraproject.org/wiki/Changes/php72 From 5885f154527bec815012de51616d05ca8484edc8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 9 Feb 2018 20:14:32 +0000 Subject: [PATCH 262/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ffaad04..c0af879 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1693,6 +1693,9 @@ fi %changelog +* Fri Feb 09 2018 Fedora Release Engineering - 2.0.15-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Sat Jan 20 2018 Björn Esser - 2.0.15-8 - Rebuilt for switch to libxcrypt From 3ab3bbef4aaa2fc549fc37a759ec1867cb3eb09a Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 12 Feb 2018 17:21:55 -0600 Subject: [PATCH 263/427] Updated to 2.0.16 --- uwsgi.spec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index c0af879..a71bc67 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,14 +1,14 @@ # Version %global majornumber 2 %global minornumber 0 -%global releasenumber 15 +%global releasenumber 16 # Documentation sources: -%global commit 1610d37413b3e9dd7aea9fcdd711d602ae909d25 +%global commit eb4ad986cba70ed4acc44699e80965c1175aa323 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} -%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} +%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} # This is primarily built for fedora, make it easy right now %if 0%{?fedora} @@ -117,7 +117,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 9%{?dist} +Release: 0%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -161,7 +161,7 @@ BuildRequires: bzip2-devel, gmp-devel, pam-devel # java-1.8.0-openjdk-aarch32, which provides client/libjvm.so # but not server/libjvm.so, which uwsgi requires BuildRequires: java-1.8.0-openjdk-headless -BuildRequires: java-1.8.0-openjdk-devel +BuildRequires: java-1.8.0-openjdk-devel %endif BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel From d8740bf21a5c75d9e419da1c03492f029816f112 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 12 Feb 2018 20:34:02 -0600 Subject: [PATCH 264/427] Conditionally disable router-access on f28 f28 retired tcp_wrappers, which are needed for router_access --- fedora.ini | 1 - uwsgi.spec | 20 +++++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 864ab2f..67ca940 100644 --- a/fedora.ini +++ b/fedora.ini @@ -42,7 +42,6 @@ plugins = airbrake, rack, rawrouter, redislog, - router_access, router_basicauth, router_cache, router_expires, diff --git a/uwsgi.spec b/uwsgi.spec index a71bc67..96b3cff 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -115,6 +115,13 @@ %global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') %endif +# Disable router_access in fedora >= 28 because tcp_wrappers deprecation +%if 0%{?fedora} >= 28 +%bcond_with tcp_wrappers +%else +%bcond_without tcp_wrappers +%endif + Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} Release: 0%{?dist} @@ -139,6 +146,9 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel +%if %{with tcp_wrappers} +BuildRequires: tcp_wrappers-devel +%endif %if %{with python3} BuildRequires: python%{python3_pkgversion}-devel %endif @@ -164,7 +174,7 @@ BuildRequires: java-1.8.0-openjdk-headless BuildRequires: java-1.8.0-openjdk-devel %endif BuildRequires: java-devel, sqlite-devel, libcap-devel -BuildRequires: httpd-devel, tcp_wrappers-devel, libcurl-devel +BuildRequires: httpd-devel, libcurl-devel BuildRequires: gloox-devel, libstdc++-devel BuildRequires: GeoIP-devel, libevent-devel, zlib-devel BuildRequires: openldap-devel, boost-devel @@ -198,6 +208,11 @@ BuildRequires: v8-devel BuildRequires: libmongodb-devel %endif +%if 0%{?fedora} >= 28 +BuildRequires: libargon2-devel +Obsoletes: %{name}-router-access <= 2.0.16 +%endif + Obsoletes: %{name}-loggers <= 1.9.8-1 Obsoletes: %{name}-routers <= 2.0.6 Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 @@ -1198,6 +1213,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/jwsgi fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/ring fedora %endif +%if %{with tcp_wrappers} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/router_access fedora +%endif %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install From 34b2b04b3c0e780f5fd28c4ffb0f599f9abfddf3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 12 Feb 2018 20:37:41 -0600 Subject: [PATCH 265/427] Added new-sources --- .gitignore | 2 ++ sources | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 3172213..0049807 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,5 @@ /uwsgi-docs-f6eacc5.tar.gz /uwsgi-2.0.15.tar.gz /uwsgi-docs-1610d37.tar.gz +/uwsgi-2.0.16.tar.gz +/uwsgi-docs-eb4ad98.tar.gz diff --git a/sources b/sources index 721cdf0..3588511 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.15.tar.gz) = cb3ce7dc9eb9806151b04b04dc80ac7204cb4ddadf295eea98d5ebbf3a8c02f4b0bfb9a0490997c5edf427e39d3073a2d5b4fe7bd8ec458b30c0aab8e1da9bef -SHA512 (uwsgi-docs-1610d37.tar.gz) = f7f7b1923c2a78c65f3d258db49e003ca34ff988f9e573b30c057b7814b38e24fd2f76ebc5117bd9c3caa12c8f846f06b9591b0e4f84785a96aaf7c041c9b976 +SHA512 (uwsgi-2.0.16.tar.gz) = 2f80da366e463971400648fc8dcc9d7a5b51f03cba0b1ce08ff9e8ed75f0955e2014c84892d9991bd7a6f6a4a6b4ac819477f8e4afeded258d3147b5becb2e77 +SHA512 (uwsgi-docs-eb4ad98.tar.gz) = 3428ed012197bb9bb8b519fa379546783d1ca22795535da46f6b000cb9ead2cad626ceba01b0b6e5998dd498471372d9e12a25fad06c94252ea60c3920c6af50 From 83c325478052e7c72d73fd7e90041196c07bc367 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 12 Feb 2018 20:39:57 -0600 Subject: [PATCH 266/427] Bumping for new release --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 96b3cff..e7aafb7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -124,7 +124,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 0%{?dist} +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1711,6 +1711,10 @@ fi %changelog +* Tue Feb 13 2018 Jorge A Gallegos - 2.0.16-1 +- Conditionally disable router-access for tcp_wrappers deprecation (Jorge Gallegos) +- Updated to 2.0.16 which includes fix for CVE-2018-6758 (Jorge Gallegos) + * Fri Feb 09 2018 Fedora Release Engineering - 2.0.15-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 60883e8d8dd91d35a8de780493d0d5c969aa1ada Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 20 Feb 2018 12:38:22 -0600 Subject: [PATCH 267/427] Experimentally drop libgo --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index e7aafb7..50249f6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -189,7 +189,7 @@ BuildRequires: perl-Coro BuildRequires: zeromq-devel %endif %if %{with go} -BuildRequires: libgo-devel, gcc-go +BuildRequires: gcc-go %endif %if %{with systemd} BuildRequires: systemd-devel, systemd-units @@ -612,7 +612,7 @@ This package contains the fiber plugin for uWSGI %package -n %{name}-plugin-gccgo Summary: uWSGI - Plugin for GoLang support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libgo +Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-gccgo This package contains the gccgo plugin for uWSGI From 42f326b768738b3cd6e05c2e532083ddd5642f84 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 29 Mar 2018 18:29:23 +0200 Subject: [PATCH 268/427] Adjust the sources to build in rawhide --- uwsgi-2.0.16-strict.patch | 48 +++++++++++++++++++++++++++++++++++++++ uwsgi.spec | 3 +++ 2 files changed, 51 insertions(+) create mode 100644 uwsgi-2.0.16-strict.patch diff --git a/uwsgi-2.0.16-strict.patch b/uwsgi-2.0.16-strict.patch new file mode 100644 index 0000000..363f837 --- /dev/null +++ b/uwsgi-2.0.16-strict.patch @@ -0,0 +1,48 @@ +diff -up uwsgi-2.0.16/plugins/rack/rack_plugin.c.strict uwsgi-2.0.16/plugins/rack/rack_plugin.c +--- uwsgi-2.0.16/plugins/rack/rack_plugin.c.strict 2018-02-10 11:00:57.000000000 +0100 ++++ uwsgi-2.0.16/plugins/rack/rack_plugin.c 2018-03-29 18:02:35.274649402 +0200 +@@ -71,7 +71,7 @@ static struct uwsgi_buffer *uwsgi_ruby_e + + static struct uwsgi_buffer *uwsgi_ruby_exception_msg(struct wsgi_request *wsgi_req) { + VALUE err = rb_errinfo(); +- VALUE e = rb_funcall(err, rb_intern("message"), 0, 0); ++ VALUE e = rb_funcall(err, rb_intern("message"), 0); + struct uwsgi_buffer *ub = uwsgi_buffer_new(RSTRING_LEN(e)); + if (uwsgi_buffer_append(ub, RSTRING_PTR(e), RSTRING_LEN(e))) { + uwsgi_buffer_destroy(ub); +@@ -114,7 +114,7 @@ error: + static void uwsgi_ruby_exception_log(struct wsgi_request *wsgi_req) { + VALUE err = rb_errinfo(); + VALUE eclass = rb_class_name(rb_class_of(err)); +- VALUE msg = rb_funcall(err, rb_intern("message"), 0, 0); ++ VALUE msg = rb_funcall(err, rb_intern("message"), 0); + + VALUE ary = rb_funcall(err, rb_intern("backtrace"), 0); + int i; +diff -up uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c.strict uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c +--- uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c.strict 2018-02-10 11:00:57.000000000 +0100 ++++ uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c 2018-03-29 18:02:57.311779724 +0200 +@@ -2,7 +2,10 @@ + + #ifdef UWSGI_ROUTING + +-#if defined(__linux__) && defined(__GLIBC__) ++#if defined(__linux__) && (defined(__GLIBC__) && __GLIBC__ == 2) && \ ++ (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4) ++ /* work around glibc-2.2.5 bug, ++ * has been fixed at some time in glibc-2.3.X */ + #include + #elif defined(__CYGWIN__) + #include +@@ -66,7 +69,10 @@ static uint16_t htpasswd_check(char *fil + + if (clen > 13) cpwd[13] = 0; + +-#if defined(__linux__) && defined(__GLIBC__) ++#if defined(__linux__) && (defined(__GLIBC__) && __GLIBC__ == 2) && \ ++ (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4) ++ /* work around glibc-2.2.5 bug, ++ * has been fixed at some time in glibc-2.3.X */ + struct crypt_data cd; + cd.initialized = 0; + // we do as nginx here diff --git a/uwsgi.spec b/uwsgi.spec index 50249f6..09a3d3e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -144,6 +144,8 @@ Patch3: uwsgi_fix_lua.patch Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch +# https://github.com/unbit/uwsgi/pull/1768 +Patch8: uwsgi-2.0.16-strict.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel %if %{with tcp_wrappers} @@ -1141,6 +1143,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %if %{with mono} %patch7 -p1 %endif +%patch8 -p1 -b .strict #disable plug-ins %if %{without mongodblibs} From fef84e86e66ed335df423a573b97886a6ebd5666 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 29 Mar 2018 18:29:40 +0200 Subject: [PATCH 269/427] Do not generate the obsoleted subpackage --- uwsgi.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 09a3d3e..77be7de 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -917,6 +917,7 @@ This package contains the zergpool plugin for uWSGI # Routers +%if %{with tcp_wrappers} %package -n %{name}-router-access Summary: uWSGI - Plugin for router_access router support Group: System Environment/Daemons @@ -925,6 +926,7 @@ Provides: %{name}-routers = %{version}-%{release} %description -n %{name}-router-access This package contains the router_access plugin for uWSGI +%endif %package -n %{name}-router-basicauth Summary: uWSGI - Plugin for Basic Auth router support @@ -1642,8 +1644,10 @@ fi # Routers +%if %{with tcp_wrappers} %files -n %{name}-router-access %{_libdir}/%{name}/router_access_plugin.so +%endif %files -n %{name}-router-basicauth %{_libdir}/%{name}/router_basicauth_plugin.so From ad5af2005fe6bf4caf311e7891b9eda95a98a8be Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 3 Apr 2018 14:45:27 +0200 Subject: [PATCH 270/427] Add missing path to header files This makes the package build in rawhide --- uwsgi-2.0.16-glfs.patch | 10 ++++++++++ uwsgi.spec | 3 +++ 2 files changed, 13 insertions(+) create mode 100644 uwsgi-2.0.16-glfs.patch diff --git a/uwsgi-2.0.16-glfs.patch b/uwsgi-2.0.16-glfs.patch new file mode 100644 index 0000000..fc41c38 --- /dev/null +++ b/uwsgi-2.0.16-glfs.patch @@ -0,0 +1,10 @@ +diff -up uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs uwsgi-2.0.16/plugins/glusterfs/glusterfs.c +--- uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs 2018-04-03 14:35:48.099323330 +0200 ++++ uwsgi-2.0.16/plugins/glusterfs/glusterfs.c 2018-04-03 14:35:07.573068567 +0200 +@@ -1,5 +1,5 @@ + #include +-#include ++#include + + extern struct uwsgi_server uwsgi; + diff --git a/uwsgi.spec b/uwsgi.spec index 77be7de..0cd69bd 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -146,6 +146,8 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/pull/1768 Patch8: uwsgi-2.0.16-strict.patch +# https://github.com/unbit/uwsgi/pull/1772 +Patch9: uwsgi-2.0.16-glfs.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel %if %{with tcp_wrappers} @@ -1146,6 +1148,7 @@ echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) %patch7 -p1 %endif %patch8 -p1 -b .strict +%patch9 -p1 -b .glfs #disable plug-ins %if %{without mongodblibs} From e56ed9bbc6ff426839ba7503285feacf79f5e8e5 Mon Sep 17 00:00:00 2001 From: Till Maas Date: Tue, 3 Apr 2018 22:39:31 +0200 Subject: [PATCH 271/427] Fix building in Rawhide (#1556525) (Jakub Jelen) Disable tcp_wrappers for Fedora 28 and newer (Jakub Jelen) --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0cd69bd..c78c196 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -124,7 +124,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1721,6 +1721,10 @@ fi %changelog +* Tue Apr 03 2018 Till Maas - 2.0.16-2 +- Fix building in Rawhide (#1556525) (Jakub Jelen) +- Disable tcp_wrappers for Fedora 28 and newer (Jakub Jelen) + * Tue Feb 13 2018 Jorge A Gallegos - 2.0.16-1 - Conditionally disable router-access for tcp_wrappers deprecation (Jorge Gallegos) - Updated to 2.0.16 which includes fix for CVE-2018-6758 (Jorge Gallegos) From 0e303f22f718b46bfbc59b591ac38faf9f081d81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 19 Jun 2018 11:30:06 +0200 Subject: [PATCH 272/427] Rebuilt for Python 3.7 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index c78c196..c57d33d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -124,7 +124,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1721,6 +1721,9 @@ fi %changelog +* Tue Jun 19 2018 Miro Hrončok - 2.0.16-3 +- Rebuilt for Python 3.7 + * Tue Apr 03 2018 Till Maas - 2.0.16-2 - Fix building in Rawhide (#1556525) (Jakub Jelen) - Disable tcp_wrappers for Fedora 28 and newer (Jakub Jelen) From 9054db2bf8d806d0242cdb75049c771e1ddb5a47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tadej=20Jane=C5=BE?= Date: Wed, 6 Jun 2018 11:49:42 +0200 Subject: [PATCH 273/427] Modernize and generalize building of Python subpackages --- uwsgi.spec | 141 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 83 insertions(+), 58 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index c57d33d..1eea073 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -15,8 +15,7 @@ %bcond_without systemd %bcond_without go %bcond_without python3 -%bcond_without tornado3 -%{!?python3_pkgversion: %global python3_pkgversion 3} +%bcond_without python3_tornado %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq @@ -66,7 +65,7 @@ %bcond_with go # el6 doesn't have python3 %bcond_with python3 -%bcond_with tornado3 +%bcond_with python3_tornado # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 # el6 doesn't have perl-PSGI @@ -89,9 +88,8 @@ %bcond_without systemd # el7 does have python3 %bcond_without python3 -%{!?python3_pkgversion: %global python3_pkgversion 34} # ...but no python3-tornado yet -%bcond_with tornado3 +%bcond_with python3_tornado # el7 doesn't have zeromq %bcond_with zeromq # el7 doesn't have greenlet @@ -124,7 +122,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -261,23 +259,29 @@ Requires: %{name} = %{version}-%{release} This package contains the development header files and libraries for uWSGI extensions -%package -n python-uwsgidecorators -Summary: Python decorators providing access to the uwsgi API +%package -n python2-uwsgidecorators +Summary: Python 2 decorators providing access to the uwsgi API Group: Development/Libraries Requires: %{name} = %{version}-%{release} -Requires: %{name}-plugin-python = %{version}-%{release} +Requires: %{name}-plugin-python2 = %{version}-%{release} +Obsoletes: python-uwsgidecorators < 2.0.16-4 -%description -n python-uwsgidecorators -The uwsgidecorators Python module provides higher-level access to the uWSGI API. +%description -n python2-uwsgidecorators +The uwsgidecorators Python 2 module provides higher-level access to the uWSGI API. -%package -n python3-uwsgidecorators -Summary: Python 3 decorators providing access to the uwsgi API +%if %{with python3} +%package -n python%{python3_pkgversion}-uwsgidecorators +Summary: Python %{python3_version} decorators providing access to the uwsgi API Group: Development/Libraries Requires: %{name} = %{version}-%{release} -Requires: %{name}-plugin-python3 = %{version}-%{release} +Requires: %{name}-plugin-python%{python3_pkgversion} = %{version}-%{release} +%if 0%{?rhel} == 7 +Obsoletes: python3-uwsgidecorators < 2.0.16-4 +%endif -%description -n python3-uwsgidecorators -The uwsgidecorators Python 3 module provides higher-level access to the uWSGI API. +%description -n python%{python3_pkgversion}-uwsgidecorators +The uwsgidecorators Python %{python3_version} module provides higher-level access to the uWSGI API. +%endif %package -n %{name}-docs Summary: uWSGI - Documentation @@ -629,13 +633,14 @@ Requires: %{name}-plugin-common = %{version}-%{release}, GeoIP %description -n %{name}-plugin-geoip This package contains the geoip plugin for uWSGI -%package -n %{name}-plugin-gevent -Summary: uWSGI - Plugin for GEvent support +%package -n %{name}-plugin-python2-gevent +Summary: uWSGI - Plugin for Python 2 GEvent support Group: System Environment/Daemons -Requires: %{name}-plugin-python = %{version}-%{release}, libevent +Requires: %{name}-plugin-python2 = %{version}-%{release}, libevent +Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 -%description -n %{name}-plugin-gevent -This package contains the gevent plugin for uWSGI +%description -n %{name}-plugin-python2-gevent +This package contains the Python2 gevent plugin for uWSGI %if %{with glusterfs} %package -n %{name}-plugin-glusterfs @@ -648,13 +653,14 @@ This package contains the glusterfs plugin for uWSGI %endif %if %{with greenlet} -%package -n %{name}-plugin-greenlet -Summary: uWSGI - Plugin for Python Greenlet support +%package -n %{name}-plugin-python2-greenlet +Summary: uWSGI - Plugin for Python 2 Greenlet support Group: System Environment/Daemons -Requires: python-greenlet, %{name}-plugin-python = %{version}-%{release} +Requires: python-greenlet, %{name}-plugin-python2 = %{version}-%{release} +Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 -%description -n %{name}-plugin-greenlet -This package contains the python greenlet plugin for uWSGI +%description -n %{name}-plugin-python2-greenlet +This package contains the Python 2 greenlet plugin for uWSGI %endif %if %{with gridfs} @@ -756,26 +762,32 @@ This package contains the PHP plugin for uWSGI %package -n %{name}-plugin-pty Summary: uWSGI - Plugin for PTY support Group: System Environment/Daemons -Requires: python, %{name}-plugin-common = %{version}-%{release} +Requires: python2, %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-pty This package contains the pty plugin for uWSGI -%package -n %{name}-plugin-python -Summary: uWSGI - Plugin for Python support +%package -n %{name}-plugin-python2 +Summary: uWSGI - Plugin for Python 2 support Group: System Environment/Daemons -Requires: python, %{name}-plugin-common = %{version}-%{release} +Requires: python2, %{name}-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-python < 2.0.16-4 -%description -n %{name}-plugin-python -This package contains the python plugin for uWSGI +%description -n %{name}-plugin-python2 +This package contains the Python 2 plugin for uWSGI -%package -n %{name}-plugin-python3 -Summary: uWSGI - Plugin for Python 3 support +%if %{with python3} +%package -n %{name}-plugin-python%{python3_pkgversion} +Summary: uWSGI - Plugin for Python %{python3_version} support Group: System Environment/Daemons Requires: python%{python3_pkgversion}, %{name}-plugin-common = %{version}-%{release} +%if 0%{?rhel} == 7 +Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 +%endif -%description -n %{name}-plugin-python3 -This package contains the Python 3 plugin for uWSGI +%description -n %{name}-plugin-python%{python3_pkgversion} +This package contains the Python %{python3_version} plugin for uWSGI +%endif %package -n %{name}-plugin-rack Summary: uWSGI - Ruby rack plugin @@ -851,21 +863,27 @@ Requires: %{name}-plugin-common = %{version}-%{release} %description -n %{name}-plugin-ssi This package contains the ssi plugin for uWSGI -%package -n %{name}-plugin-tornado -Summary: uWSGI - Plugin for Tornado support +%package -n %{name}-plugin-python2-tornado +Summary: uWSGI - Plugin for Tornado (Python 2) support Group: System Environment/Daemons Requires: %{name}-plugin-common = %{version}-%{release}, python-tornado +Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 -%description -n %{name}-plugin-tornado -This package contains the tornado plugin for uWSGI +%description -n %{name}-plugin-python2-tornado +This package contains the tornado (Python 2) plugin for uWSGI -%package -n %{name}-plugin-tornado3 -Summary: uWSGI - Plugin for Tornado/Python3 support +%if %{with python3_tornado} +%package -n %{name}-plugin-python%{python3_pkgversion}-tornado +Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support Group: System Environment/Daemons Requires: %{name}-plugin-common = %{version}-%{release}, python3-tornado +%if 0%{?fedora} && 0%{?fedora} < 29 +Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 +%endif -%description -n %{name}-plugin-tornado3 -This package contains the tornado (python v3) plugin for uWSGI +%description -n %{name}-plugin-python%{python3_pkgversion}-tornado +This package contains the tornado (Python %{python3_version}) plugin for uWSGI +%endif %package -n %{name}-plugin-ugreen Summary: uWSGI - Plugin for uGreen support @@ -1169,9 +1187,9 @@ sed -in "s/mono, //" buildconf/fedora.ini %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini %if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python3 -%if %{with tornado3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora tornado3 +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} +%if %{with python3_tornado} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif %endif %if %{with mongodblibs} @@ -1360,12 +1378,12 @@ fi %{_includedir}/%{name} %{_usrsrc}/%{name} -%files -n python-uwsgidecorators +%files -n python2-uwsgidecorators %defattr(-,root,root,-) %{python_sitelib}/* %if %{with python3} -%files -n python3-uwsgidecorators +%files -n python%{python3_pkgversion}-uwsgidecorators %defattr(-,root,root,-) %{python3_sitelib}/* %endif @@ -1518,7 +1536,7 @@ fi %files -n %{name}-plugin-geoip %{_libdir}/%{name}/geoip_plugin.so -%files -n %{name}-plugin-gevent +%files -n %{name}-plugin-python2-gevent %{_libdir}/%{name}/gevent_plugin.so %if %{with glusterfs} @@ -1527,7 +1545,7 @@ fi %endif %if %{with greenlet} -%files -n %{name}-plugin-greenlet +%files -n %{name}-plugin-python2-greenlet %{_libdir}/%{name}/greenlet_plugin.so %endif @@ -1578,12 +1596,12 @@ fi %files -n %{name}-plugin-pty %{_libdir}/%{name}/pty_plugin.so -%files -n %{name}-plugin-python +%files -n %{name}-plugin-python2 %{_libdir}/%{name}/python_plugin.so %if %{with python3} -%files -n %{name}-plugin-python3 -%{_libdir}/%{name}/python3_plugin.so +%files -n %{name}-plugin-python%{python3_pkgversion} +%{_libdir}/%{name}/python%{python3_pkgversion}_plugin.so %endif %files -n %{name}-plugin-rack @@ -1617,12 +1635,12 @@ fi %files -n %{name}-plugin-ssi %{_libdir}/%{name}/ssi_plugin.so -%files -n %{name}-plugin-tornado +%files -n %{name}-plugin-python2-tornado %{_libdir}/%{name}/tornado_plugin.so -%if %{with tornado3} -%files -n %{name}-plugin-tornado3 -%{_libdir}/%{name}/tornado3_plugin.so +%if %{with python3_tornado} +%files -n %{name}-plugin-python%{python3_pkgversion}-tornado +%{_libdir}/%{name}/python%{python3_pkgversion}_tornado_plugin.so %endif %files -n %{name}-plugin-ugreen @@ -1721,6 +1739,13 @@ fi %changelog +* Tue Jun 26 2018 Tadej Janež - 2.0.16-4 +- Modernize and generalize building of Python subpackages: + - replace python with python2 + - use appropriate macros for when refering to Python 3 + - prefix Python-dependent plugins with the version of Python they are built + with + * Tue Jun 19 2018 Miro Hrončok - 2.0.16-3 - Rebuilt for Python 3.7 From e08669b5e4aee1fbd6b81ebda93a6b86e3a10b1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tadej=20Jane=C5=BE?= Date: Tue, 26 Jun 2018 09:43:14 +0200 Subject: [PATCH 274/427] Build Python 3 subpackages for the other Python 3 version in EPEL7 --- uwsgi.spec | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 1eea073..cf0ef52 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -16,6 +16,8 @@ %bcond_without go %bcond_without python3 %bcond_without python3_tornado +# Fedora doesn't have two versions of python3 +%bcond_with python3_other %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq @@ -66,6 +68,7 @@ # el6 doesn't have python3 %bcond_with python3 %bcond_with python3_tornado +%bcond_with python3_other # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 # el6 doesn't have perl-PSGI @@ -90,6 +93,8 @@ %bcond_without python3 # ...but no python3-tornado yet %bcond_with python3_tornado +# el 7 has another version of python3 +%bcond_without python3_other # el7 doesn't have zeromq %bcond_with zeromq # el7 doesn't have greenlet @@ -154,6 +159,9 @@ BuildRequires: tcp_wrappers-devel %if %{with python3} BuildRequires: python%{python3_pkgversion}-devel %endif +%if %{with python3_other} +BuildRequires: python%{python3_other_pkgversion}-devel +%endif %if %{with greenlet} BuildRequires: python-greenlet-devel %endif @@ -283,6 +291,17 @@ Obsoletes: python3-uwsgidecorators < 2.0.16-4 The uwsgidecorators Python %{python3_version} module provides higher-level access to the uWSGI API. %endif +%if %{with python3_other} +%package -n python%{python3_other_pkgversion}-uwsgidecorators +Summary: Python %{python3_other_version} decorators providing access to the uwsgi API +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +Requires: %{name}-plugin-python%{python3_other_pkgversion} = %{version}-%{release} + +%description -n python%{python3_other_pkgversion}-uwsgidecorators +The uwsgidecorators Python %{python3_other_version} module provides higher-level access to the uWSGI API. +%endif + %package -n %{name}-docs Summary: uWSGI - Documentation Group: Documentation @@ -789,6 +808,16 @@ Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 This package contains the Python %{python3_version} plugin for uWSGI %endif +%if %{with python3_other} +%package -n %{name}-plugin-python%{python3_other_pkgversion} +Summary: uWSGI - Plugin for Python %{python3_other_version} support +Group: System Environment/Daemons +Requires: python%{python3_other_pkgversion}, %{name}-plugin-common = %{version}-%{release} + +%description -n %{name}-plugin-python%{python3_other_pkgversion} +This package contains the Python %{python3_other_version} plugin for uWSGI +%endif + %package -n %{name}-plugin-rack Summary: uWSGI - Ruby rack plugin Group: System Environment/Daemons @@ -1192,6 +1221,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif %endif +%if %{with python3_other} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/python fedora python%{python3_other_pkgversion} +%endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora @@ -1282,6 +1314,12 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/ %endif %endif +%if %{with python3_other} +%{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 +%py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/ +%endif +%endif %if %{with java} %{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} %endif @@ -1388,6 +1426,12 @@ fi %{python3_sitelib}/* %endif +%if %{with python3_other} +%files -n python%{python3_other_pkgversion}-uwsgidecorators +%defattr(-,root,root,-) +%{python3_other_sitelib}/* +%endif + %files -n %{name}-docs %doc docs @@ -1604,6 +1648,11 @@ fi %{_libdir}/%{name}/python%{python3_pkgversion}_plugin.so %endif +%if %{with python3_other} +%files -n %{name}-plugin-python%{python3_other_pkgversion} +%{_libdir}/%{name}/python%{python3_other_pkgversion}_plugin.so +%endif + %files -n %{name}-plugin-rack %{_libdir}/%{name}/rack_plugin.so @@ -1745,6 +1794,7 @@ fi - use appropriate macros for when refering to Python 3 - prefix Python-dependent plugins with the version of Python they are built with +- Also build Python 3 subpackages for the other Python 3 version in EPEL7 * Tue Jun 19 2018 Miro Hrončok - 2.0.16-3 - Rebuilt for Python 3.7 From a24a9f548a35ae31920e1d760440d8fdd75dd8ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tadej=20Jane=C5=BE?= Date: Wed, 27 Jun 2018 09:59:50 +0200 Subject: [PATCH 275/427] Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 --- uwsgi.spec | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index cf0ef52..7c157ca 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -127,7 +127,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -659,7 +659,27 @@ Requires: %{name}-plugin-python2 = %{version}-%{release}, libevent Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 %description -n %{name}-plugin-python2-gevent -This package contains the Python2 gevent plugin for uWSGI +This package contains the Python 2 gevent plugin for uWSGI + +%if %{with python3} +%package -n %{name}-plugin-python%{python3_pkgversion}-gevent +Summary: uWSGI - Plugin for Python %{python3_version} GEvent support +Group: System Environment/Daemons +Requires: %{name}-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent + +%description -n %{name}-plugin-python%{python3_pkgversion}-gevent +This package contains the Python %{python3_version} gevent plugin for uWSGI +%endif + +%if %{with python3_other} +%package -n %{name}-plugin-python%{python3_other_pkgversion}-gevent +Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support +Group: System Environment/Daemons +Requires: %{name}-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent + +%description -n %{name}-plugin-python%{python3_other_pkgversion}-gevent +This package contains the Python %{python3_other_version} gevent plugin for uWSGI +%endif %if %{with glusterfs} %package -n %{name}-plugin-glusterfs @@ -1217,12 +1237,14 @@ sed -in "s/mono, //" buildconf/fedora.ini CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent %if %{with python3_tornado} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif %endif %if %{with python3_other} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/python fedora python%{python3_other_pkgversion} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora @@ -1583,6 +1605,16 @@ fi %files -n %{name}-plugin-python2-gevent %{_libdir}/%{name}/gevent_plugin.so +%if %{with python3} +%files -n %{name}-plugin-python%{python3_pkgversion}-gevent +%{_libdir}/%{name}/python%{python3_pkgversion}_gevent_plugin.so +%endif + +%if %{with python3_other} +%files -n %{name}-plugin-python%{python3_other_pkgversion}-gevent +%{_libdir}/%{name}/python%{python3_other_pkgversion}_gevent_plugin.so +%endif + %if %{with glusterfs} %files -n %{name}-plugin-glusterfs %{_libdir}/%{name}/glusterfs_plugin.so @@ -1788,6 +1820,9 @@ fi %changelog +* Wed Jun 27 2018 Tadej Janež - 2.0.16-5 +- Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 + * Tue Jun 26 2018 Tadej Janež - 2.0.16-4 - Modernize and generalize building of Python subpackages: - replace python with python2 From 745752fec6525fac10a8d38fc5ee5885688364c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tadej=20Jane=C5=BE?= Date: Wed, 27 Jun 2018 10:15:01 +0200 Subject: [PATCH 276/427] Always build Python 3 version of tornado plugin when building with Py3 --- uwsgi.spec | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 7c157ca..84e03ae 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -15,7 +15,6 @@ %bcond_without systemd %bcond_without go %bcond_without python3 -%bcond_without python3_tornado # Fedora doesn't have two versions of python3 %bcond_with python3_other %bcond_without ruby19 @@ -67,7 +66,6 @@ %bcond_with go # el6 doesn't have python3 %bcond_with python3 -%bcond_with python3_tornado %bcond_with python3_other # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 @@ -91,8 +89,6 @@ %bcond_without systemd # el7 does have python3 %bcond_without python3 -# ...but no python3-tornado yet -%bcond_with python3_tornado # el 7 has another version of python3 %bcond_without python3_other # el7 doesn't have zeromq @@ -921,11 +917,11 @@ Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 %description -n %{name}-plugin-python2-tornado This package contains the tornado (Python 2) plugin for uWSGI -%if %{with python3_tornado} +%if %{with python3} %package -n %{name}-plugin-python%{python3_pkgversion}-tornado Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, python3-tornado +Requires: %{name}-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado %if 0%{?fedora} && 0%{?fedora} < 29 Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 %endif @@ -1238,10 +1234,8 @@ CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig. %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent -%if %{with python3_tornado} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif -%endif %if %{with python3_other} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/python fedora python%{python3_other_pkgversion} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent @@ -1719,7 +1713,7 @@ fi %files -n %{name}-plugin-python2-tornado %{_libdir}/%{name}/tornado_plugin.so -%if %{with python3_tornado} +%if %{with python3} %files -n %{name}-plugin-python%{python3_pkgversion}-tornado %{_libdir}/%{name}/python%{python3_pkgversion}_tornado_plugin.so %endif @@ -1822,6 +1816,8 @@ fi %changelog * Wed Jun 27 2018 Tadej Janež - 2.0.16-5 - Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 +- Always build Python 3 version of tornado plugin when building with Python 3 + (drop python3_tornado build conditional) * Tue Jun 26 2018 Tadej Janež - 2.0.16-4 - Modernize and generalize building of Python subpackages: From 7e7de241d586a00099922bf585d78da6db2c5671 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tadej=20Jane=C5=BE?= Date: Wed, 27 Jun 2018 10:46:34 +0200 Subject: [PATCH 277/427] Build Python 3 version of greenlet plugin on Fedora and EPEL7 Build Python 2 version of greenlet plugin on EPEL7 --- uwsgi.spec | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 84e03ae..18b3422 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -93,8 +93,8 @@ %bcond_without python3_other # el7 doesn't have zeromq %bcond_with zeromq -# el7 doesn't have greenlet -%bcond_with greenlet +# el7 does have greenlet +%bcond_without greenlet # el7 does have perl-PSGI # el7 doesn't have perl-Coro %bcond_without perl @@ -160,6 +160,9 @@ BuildRequires: python%{python3_other_pkgversion}-devel %endif %if %{with greenlet} BuildRequires: python-greenlet-devel +%if %{with python3} +BuildRequires: python%{python3_pkgversion}-greenlet-devel +%endif %endif %if %{with glusterfs} BuildRequires: glusterfs-devel, glusterfs-api-devel @@ -696,6 +699,16 @@ Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 %description -n %{name}-plugin-python2-greenlet This package contains the Python 2 greenlet plugin for uWSGI + +%if %{with python3} +%package -n %{name}-plugin-python%{python3_pkgversion}-greenlet +Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support +Group: System Environment/Daemons +Requires: python%{python3_pkgversion}-greenlet, %{name}-plugin-python%{python3_pkgversion} = %{version}-%{release} + +%description -n %{name}-plugin-python%{python3_pkgversion}-greenlet +This package contains the Python %{python3_version} greenlet plugin for uWSGI +%endif %endif %if %{with gridfs} @@ -1275,6 +1288,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %endif %if %{with greenlet} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/greenlet fedora +%if %{with python3} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet +%endif %endif %if %{with glusterfs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/glusterfs fedora @@ -1617,6 +1633,11 @@ fi %if %{with greenlet} %files -n %{name}-plugin-python2-greenlet %{_libdir}/%{name}/greenlet_plugin.so + +%if %{with python3} +%files -n %{name}-plugin-python%{python3_pkgversion}-greenlet +%{_libdir}/%{name}/python%{python3_pkgversion}_greenlet_plugin.so +%endif %endif %if %{with gridfs} @@ -1816,6 +1837,8 @@ fi %changelog * Wed Jun 27 2018 Tadej Janež - 2.0.16-5 - Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 +- Build Python 3 version of greenlet plugin on Fedora and EPEL7 +- Build Python 2 version of greenlet plugin on EPEL7 - Always build Python 3 version of tornado plugin when building with Python 3 (drop python3_tornado build conditional) From 0e954d3ebb0af70cfb50cf74c10bd8b49e051517 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 29 Jun 2018 22:04:38 +0200 Subject: [PATCH 278/427] Perl 5.28 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 18b3422..b2e585f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -123,7 +123,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1835,6 +1835,9 @@ fi %changelog +* Fri Jun 29 2018 Jitka Plesnikova - 2.0.16-6 +- Perl 5.28 rebuild + * Wed Jun 27 2018 Tadej Janež - 2.0.16-5 - Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 - Build Python 3 version of greenlet plugin on Fedora and EPEL7 From 862bb39939c2b94a44654327fc996ef9d7c1f073 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Tue, 3 Jul 2018 12:42:45 +0200 Subject: [PATCH 279/427] Perl 5.28 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index b2e585f..b089158 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -123,7 +123,7 @@ Name: uwsgi Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1835,6 +1835,9 @@ fi %changelog +* Tue Jul 03 2018 Petr Pisar - 2.0.16-7 +- Perl 5.28 rebuild + * Fri Jun 29 2018 Jitka Plesnikova - 2.0.16-6 - Perl 5.28 rebuild From 44f048e846eed2753e8db7b45d8b63f37bfb6b0c Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 18:48:46 -0500 Subject: [PATCH 280/427] Expand %{name} throughout spec file Since the name is static, there is no benefit to macroing it everywhere. Just using the string 'uwsgi' improves readability. --- uwsgi.spec | 1170 ++++++++++++++++++++++++++-------------------------- 1 file changed, 585 insertions(+), 585 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index b089158..77bea1e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -128,7 +128,7 @@ Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi -Source0: http://projects.unbit.it/downloads/%{name}-%{version}.tar.gz +Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service Source3: emperor.ini @@ -219,13 +219,13 @@ BuildRequires: libmongodb-devel %if 0%{?fedora} >= 28 BuildRequires: libargon2-devel -Obsoletes: %{name}-router-access <= 2.0.16 +Obsoletes: uwsgi-router-access <= 2.0.16 %endif -Obsoletes: %{name}-loggers <= 1.9.8-1 -Obsoletes: %{name}-routers <= 2.0.6 -Obsoletes: %{name}-plugin-erlang <= 1.9.20-1 -Obsoletes: %{name}-plugin-admin <= 2.0.6 +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Obsoletes: uwsgi-routers <= 2.0.6 +Obsoletes: uwsgi-plugin-erlang <= 1.9.20-1 +Obsoletes: uwsgi-plugin-admin <= 2.0.6 Requires(pre): shadow-utils %if %{with systemd} @@ -257,20 +257,20 @@ command line, environment variables, xml, .ini and yaml files and via LDAP. Being fully modular can use tons of different technology on top of the same core. -%package -n %{name}-devel +%package -n uwsgi-devel Summary: uWSGI - Development header files and libraries Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: uwsgi = %{version}-%{release} -%description -n %{name}-devel +%description -n uwsgi-devel This package contains the development header files and libraries for uWSGI extensions %package -n python2-uwsgidecorators Summary: Python 2 decorators providing access to the uwsgi API Group: Development/Libraries -Requires: %{name} = %{version}-%{release} -Requires: %{name}-plugin-python2 = %{version}-%{release} +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: python-uwsgidecorators < 2.0.16-4 %description -n python2-uwsgidecorators @@ -280,8 +280,8 @@ The uwsgidecorators Python 2 module provides higher-level access to the uWSGI AP %package -n python%{python3_pkgversion}-uwsgidecorators Summary: Python %{python3_version} decorators providing access to the uwsgi API Group: Development/Libraries -Requires: %{name} = %{version}-%{release} -Requires: %{name}-plugin-python%{python3_pkgversion} = %{version}-%{release} +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} %if 0%{?rhel} == 7 Obsoletes: python3-uwsgidecorators < 2.0.16-4 %endif @@ -294,907 +294,907 @@ The uwsgidecorators Python %{python3_version} module provides higher-level acces %package -n python%{python3_other_pkgversion}-uwsgidecorators Summary: Python %{python3_other_version} decorators providing access to the uwsgi API Group: Development/Libraries -Requires: %{name} = %{version}-%{release} -Requires: %{name}-plugin-python%{python3_other_pkgversion} = %{version}-%{release} +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release} %description -n python%{python3_other_pkgversion}-uwsgidecorators The uwsgidecorators Python %{python3_other_version} module provides higher-level access to the uWSGI API. %endif -%package -n %{name}-docs +%package -n uwsgi-docs Summary: uWSGI - Documentation Group: Documentation -Requires: %{name} +Requires: uwsgi -%description -n %{name}-docs +%description -n uwsgi-docs This package contains the documentation files for uWSGI -%package -n %{name}-plugin-common +%package -n uwsgi-plugin-common Summary: uWSGI - Common plugins for uWSGI Group: System Environment/Daemons -Requires: %{name} = %{version}-%{release} +Requires: uwsgi = %{version}-%{release} -%description -n %{name}-plugin-common +%description -n uwsgi-plugin-common This package contains the most common plugins used with uWSGI. The plugins included in this package are: cache, CGI, RPC, uGreen # Stats pushers -%package -n %{name}-stats-pusher-file +%package -n uwsgi-stats-pusher-file Summary: uWSGI - File Stats Pusher for uWSGI -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-stats-pusher-file +%description -n uwsgi-stats-pusher-file This package contains the stats_pusher_file plugin for uWSGI %if %{with mongodblibs} -%package -n %{name}-stats-pusher-mongodb +%package -n uwsgi-stats-pusher-mongodb Summary: uWSGI - MongoDB Stats Pusher for uWSGI -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-stats-pusher-mongodb +%description -n uwsgi-stats-pusher-mongodb This package contains the stats_pusher_mongodb plugin for uWSGI %endif -%package -n %{name}-stats-pusher-socket +%package -n uwsgi-stats-pusher-socket Summary: uWSGI - Socket Stats Pusher for uWSGI -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-stats-pusher-socket +%description -n uwsgi-stats-pusher-socket This package contains the stats_pusher_socket plugin for uWSGI -%package -n %{name}-stats-pusher-statsd +%package -n uwsgi-stats-pusher-statsd Summary: uWSGI - StatsD Stats Pusher for uWSGI -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-stats-pusher-statsd +%description -n uwsgi-stats-pusher-statsd This package contains the stats_pusher_statsd plugin for uWSGI -%package -n %{name}-stats-pusher-zabbix +%package -n uwsgi-stats-pusher-zabbix Summary: uWSGI - Zabbix Stats Pusher for uWSGI -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-stats-pusher-zabbix +%description -n uwsgi-stats-pusher-zabbix This package contains the zabbix plugin for uWSGI # Alarms -%package -n %{name}-alarm-curl +%package -n uwsgi-alarm-curl Summary: uWSGI - Curl alarm plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libcurl +Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl -%description -n %{name}-alarm-curl +%description -n uwsgi-alarm-curl This package contains the alarm_curl alarm plugin for uWSGI -%package -n %{name}-alarm-xmpp +%package -n uwsgi-alarm-xmpp Summary: uWSGI - Curl alarm plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, gloox +Requires: uwsgi-plugin-common = %{version}-%{release}, gloox -%description -n %{name}-alarm-xmpp +%description -n uwsgi-alarm-xmpp This package contains the alarm_xmpp alarm plugin for uWSGI # Transformations -%package -n %{name}-transformation-chunked +%package -n uwsgi-transformation-chunked Summary: uWSGI - Chunked Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} -%description -n %{name}-transformation-chunked +%description -n uwsgi-transformation-chunked This package contains the transformation_chunked plugin for uWSGI -%package -n %{name}-transformation-gzip +%package -n uwsgi-transformation-gzip Summary: uWSGI - GZip Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} -%description -n %{name}-transformation-gzip +%description -n uwsgi-transformation-gzip This package contains the transformation_gzip plugin for uWSGI -%package -n %{name}-transformation-offload +%package -n uwsgi-transformation-offload Summary: uWSGI - Off-Load Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} -%description -n %{name}-transformation-offload +%description -n uwsgi-transformation-offload This package contains the transformation_offload plugin for uWSGI -%package -n %{name}-transformation-template +%package -n uwsgi-transformation-template Summary: uWSGI - Template Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} -%description -n %{name}-transformation-template +%description -n uwsgi-transformation-template This package contains the transformation_template plugin for uWSGI -%package -n %{name}-transformation-tofile +%package -n uwsgi-transformation-tofile Summary: uWSGI - ToFile Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-router-uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} -%description -n %{name}-transformation-tofile +%description -n uwsgi-transformation-tofile This package contains the transformation_tofile plugin for uWSGI -%package -n %{name}-transformation-toupper +%package -n uwsgi-transformation-toupper Summary: uWSGI - ToUpper Transformation plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-transformation-toupper +%description -n uwsgi-transformation-toupper This package contains the transformation_toupper plugin for uWSGI # Loggers -%package -n %{name}-log-encoder-msgpack +%package -n uwsgi-log-encoder-msgpack Summary: uWSGI - msgpack log encoder plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-log-encoder-msgpack +%description -n uwsgi-log-encoder-msgpack This package contains the msgpack log encoder plugin for uWSGI -%package -n %{name}-logger-crypto +%package -n uwsgi-logger-crypto Summary: uWSGI - logcrypto logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-logger-crypto +%description -n uwsgi-logger-crypto This package contains the logcrypto logger plugin for uWSGI -%package -n %{name}-logger-file +%package -n uwsgi-logger-file Summary: uWSGI - logfile logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-loggers <= 1.9.8-1 -Provides: %{name}-loggers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} -%description -n %{name}-logger-file +%description -n uwsgi-logger-file This package contains the logfile logger plugin for uWSGI -%package -n %{name}-logger-graylog2 +%package -n uwsgi-logger-graylog2 Summary: uWSGI - Graylog2 logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, zlib +Requires: uwsgi-plugin-common = %{version}-%{release}, zlib -%description -n %{name}-logger-graylog2 +%description -n uwsgi-logger-graylog2 This package contains the graylog2 logger plugin for uWSGI %if %{with mongodblibs} -%package -n %{name}-logger-mongodb +%package -n uwsgi-logger-mongodb Summary: uWSGI - mongodblog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-loggers <= 1.9.8-1 -Provides: %{name}-loggers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} -%description -n %{name}-logger-mongodb +%description -n uwsgi-logger-mongodb This package contains the mongodblog logger plugin for uWSGI %endif -%package -n %{name}-logger-pipe +%package -n uwsgi-logger-pipe Summary: uWSGI - logpipe logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-logger-pipe +%description -n uwsgi-logger-pipe This package contains the logcrypto logger plugin for uWSGI -%package -n %{name}-logger-redis +%package -n uwsgi-logger-redis Summary: uWSGI - redislog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-loggers <= 1.9.8-1 -Provides: %{name}-loggers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} -%description -n %{name}-logger-redis +%description -n uwsgi-logger-redis This package contains the redislog logger plugin for uWSGI -%package -n %{name}-logger-rsyslog +%package -n uwsgi-logger-rsyslog Summary: uWSGI - rsyslog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-plugin-rsyslog <= 1.9.8-1 -Provides: %{name}-plugin-rsyslog = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-rsyslog <= 1.9.8-1 +Provides: uwsgi-plugin-rsyslog = %{version}-%{release} -%description -n %{name}-logger-rsyslog +%description -n uwsgi-logger-rsyslog This package contains the rsyslog logger plugin for uWSGI -%package -n %{name}-logger-socket +%package -n uwsgi-logger-socket Summary: uWSGI - logsocket logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-loggers <= 1.9.8-1 -Provides: %{name}-loggers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} -%description -n %{name}-logger-socket +%description -n uwsgi-logger-socket This package contains the logsocket logger plugin for uWSGI -%package -n %{name}-logger-syslog +%package -n uwsgi-logger-syslog Summary: uWSGI - syslog logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-plugin-syslog <= 1.9.8-1 -Provides: %{name}-plugin-syslog = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-syslog <= 1.9.8-1 +Provides: uwsgi-plugin-syslog = %{version}-%{release} -%description -n %{name}-logger-syslog +%description -n uwsgi-logger-syslog This package contains the syslog logger plugin for uWSGI %if %{with systemd} -%package -n %{name}-logger-systemd +%package -n uwsgi-logger-systemd Summary: uWSGI - systemd journal logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-logger-systemd +%description -n uwsgi-logger-systemd This package contains the systemd journal logger plugin for uWSGI %endif %if %{with zeromq} -%package -n %{name}-logger-zeromq +%package -n uwsgi-logger-zeromq Summary: uWSGI - ZeroMQ logger plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, zeromq +Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq -%description -n %{name}-logger-zeromq +%description -n uwsgi-logger-zeromq This package contains the ZeroMQ logger plugin for uWSGI %endif # Plugins -%package -n %{name}-plugin-airbrake +%package -n uwsgi-plugin-airbrake Summary: uWSGI - Plugin for AirBrake support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libcurl +Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl -%description -n %{name}-plugin-airbrake +%description -n uwsgi-plugin-airbrake This package contains the airbrake plugin for uWSGI -%package -n %{name}-plugin-cache +%package -n uwsgi-plugin-cache Summary: uWSGI - Plugin for cache support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-cache +%description -n uwsgi-plugin-cache This package contains the cache plugin for uWSGI -%package -n %{name}-plugin-carbon +%package -n uwsgi-plugin-carbon Summary: uWSGI - Plugin for Carbon/Graphite support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-carbon +%description -n uwsgi-plugin-carbon This package contains the Carbon plugin for uWSGI (to use in graphite) %if %{with perl} -%package -n %{name}-plugin-psgi +%package -n uwsgi-plugin-psgi Summary: uWSGI - Plugin for PSGI support Group: System Environment/Daemons -Requires: perl-PSGI, %{name}-plugin-common = %{version}-%{release} +Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-psgi +%description -n uwsgi-plugin-psgi This package contains the PSGI plugin for uWSGI %if 0%{?fedora} >= 15 -%package -n %{name}-plugin-coroae +%package -n uwsgi-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-psgi = %{version}-%{release}, perl-Coro +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{version}-%{release}, perl-Coro -%description -n %{name}-plugin-coroae +%description -n uwsgi-plugin-coroae This package contains the coroae plugin for uWSGI %endif %endif -%package -n %{name}-plugin-cheaper-busyness +%package -n uwsgi-plugin-cheaper-busyness Summary: uWSGI - Plugin for Cheaper Busyness algos Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-cheaper-busyness +%description -n uwsgi-plugin-cheaper-busyness This package contains the cheaper_busyness plugin for uWSGI -%package -n %{name}-plugin-cplusplus +%package -n uwsgi-plugin-cplusplus Summary: uWSGI - Plugin for C++ support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libstdc++ +Requires: uwsgi-plugin-common = %{version}-%{release}, libstdc++ -%description -n %{name}-plugin-cplusplus +%description -n uwsgi-plugin-cplusplus This package contains the cplusplus plugin for uWSGI -%package -n %{name}-plugin-curl-cron +%package -n uwsgi-plugin-curl-cron Summary: uWSGI - Plugin for CURL Cron support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libcurl +Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl -%description -n %{name}-plugin-curl-cron +%description -n uwsgi-plugin-curl-cron This package contains the curl_cron plugin for uWSGI -%package -n %{name}-plugin-dumbloop +%package -n uwsgi-plugin-dumbloop Summary: uWSGI - Plugin for Dumb Loop support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-dumbloop +%description -n uwsgi-plugin-dumbloop This package contains the dumbloop plugin for uWSGI -%package -n %{name}-plugin-dummy +%package -n uwsgi-plugin-dummy Summary: uWSGI - Plugin for Dummy support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-dummy +%description -n uwsgi-plugin-dummy This package contains the dummy plugin for uWSGI -%package -n %{name}-plugin-fiber +%package -n uwsgi-plugin-fiber Summary: uWSGI - Plugin for Ruby Fiber support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-rack = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{version}-%{release} -%description -n %{name}-plugin-fiber +%description -n uwsgi-plugin-fiber This package contains the fiber plugin for uWSGI -%package -n %{name}-plugin-gccgo +%package -n uwsgi-plugin-gccgo Summary: uWSGI - Plugin for GoLang support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-gccgo +%description -n uwsgi-plugin-gccgo This package contains the gccgo plugin for uWSGI -%package -n %{name}-plugin-geoip +%package -n uwsgi-plugin-geoip Summary: uWSGI - Plugin for GeoIP support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, GeoIP +Requires: uwsgi-plugin-common = %{version}-%{release}, GeoIP -%description -n %{name}-plugin-geoip +%description -n uwsgi-plugin-geoip This package contains the geoip plugin for uWSGI -%package -n %{name}-plugin-python2-gevent +%package -n uwsgi-plugin-python2-gevent Summary: uWSGI - Plugin for Python 2 GEvent support Group: System Environment/Daemons -Requires: %{name}-plugin-python2 = %{version}-%{release}, libevent +Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 -%description -n %{name}-plugin-python2-gevent +%description -n uwsgi-plugin-python2-gevent This package contains the Python 2 gevent plugin for uWSGI %if %{with python3} -%package -n %{name}-plugin-python%{python3_pkgversion}-gevent +%package -n uwsgi-plugin-python%{python3_pkgversion}-gevent Summary: uWSGI - Plugin for Python %{python3_version} GEvent support Group: System Environment/Daemons -Requires: %{name}-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent +Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent -%description -n %{name}-plugin-python%{python3_pkgversion}-gevent +%description -n uwsgi-plugin-python%{python3_pkgversion}-gevent This package contains the Python %{python3_version} gevent plugin for uWSGI %endif %if %{with python3_other} -%package -n %{name}-plugin-python%{python3_other_pkgversion}-gevent +%package -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support Group: System Environment/Daemons -Requires: %{name}-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent +Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent -%description -n %{name}-plugin-python%{python3_other_pkgversion}-gevent +%description -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent This package contains the Python %{python3_other_version} gevent plugin for uWSGI %endif %if %{with glusterfs} -%package -n %{name}-plugin-glusterfs +%package -n uwsgi-plugin-glusterfs Summary: uWSGI - Plugin for GlusterFS support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, glusterfs-api +Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api -%description -n %{name}-plugin-glusterfs +%description -n uwsgi-plugin-glusterfs This package contains the glusterfs plugin for uWSGI %endif %if %{with greenlet} -%package -n %{name}-plugin-python2-greenlet +%package -n uwsgi-plugin-python2-greenlet Summary: uWSGI - Plugin for Python 2 Greenlet support Group: System Environment/Daemons -Requires: python-greenlet, %{name}-plugin-python2 = %{version}-%{release} +Requires: python-greenlet, uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 -%description -n %{name}-plugin-python2-greenlet +%description -n uwsgi-plugin-python2-greenlet This package contains the Python 2 greenlet plugin for uWSGI %if %{with python3} -%package -n %{name}-plugin-python%{python3_pkgversion}-greenlet +%package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support Group: System Environment/Daemons -Requires: python%{python3_pkgversion}-greenlet, %{name}-plugin-python%{python3_pkgversion} = %{version}-%{release} +Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} -%description -n %{name}-plugin-python%{python3_pkgversion}-greenlet +%description -n uwsgi-plugin-python%{python3_pkgversion}-greenlet This package contains the Python %{python3_version} greenlet plugin for uWSGI %endif %endif %if %{with gridfs} -%package -n %{name}-plugin-gridfs +%package -n uwsgi-plugin-gridfs Summary: uWSGI - Plugin for GridFS support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libmongodb +Requires: uwsgi-plugin-common = %{version}-%{release}, libmongodb -%description -n %{name}-plugin-gridfs +%description -n uwsgi-plugin-gridfs This package contains the gridfs plugin for uWSGI %endif %if %{with java} -%package -n %{name}-plugin-jvm +%package -n uwsgi-plugin-jvm Summary: uWSGI - Plugin for JVM support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, java-headless, jpackage-utils +Requires: uwsgi-plugin-common = %{version}-%{release}, java-headless, jpackage-utils -%description -n %{name}-plugin-jvm +%description -n uwsgi-plugin-jvm This package contains the JVM plugin for uWSGI -%package -n %{name}-plugin-jwsgi +%package -n uwsgi-plugin-jwsgi Summary: uWSGI - Plugin for JWSGI support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-jvm = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release} -%description -n %{name}-plugin-jwsgi +%description -n uwsgi-plugin-jwsgi This package contains the jwsgi plugin for uWSGI %endif -%package -n %{name}-plugin-ldap +%package -n uwsgi-plugin-ldap Summary: uWSGI - Plugin for LDAP support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, openldap +Requires: uwsgi-plugin-common = %{version}-%{release}, openldap -%description -n %{name}-plugin-ldap +%description -n uwsgi-plugin-ldap This package contains the ldap plugin for uWSGI -%package -n %{name}-plugin-lua +%package -n uwsgi-plugin-lua Summary: uWSGI - Plugin for LUA support Group: System Environment/Daemons -Requires: lua, %{name}-plugin-common = %{version}-%{release} +Requires: lua, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-lua +%description -n uwsgi-plugin-lua This package contains the lua plugin for uWSGI %if %{with zeromq} -%package -n %{name}-plugin-mongrel2 +%package -n uwsgi-plugin-mongrel2 Summary: uWSGI - Plugin for Mongrel2 support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, zeromq +Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq -%description -n %{name}-plugin-mongrel2 +%description -n uwsgi-plugin-mongrel2 This package contains the mongrel2 plugin for uWSGI %endif %if %{with mono} -%package -n %{name}-plugin-mono +%package -n uwsgi-plugin-mono Summary: uWSGI - Plugin for Mono / .NET support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, mono-web +Requires: uwsgi-plugin-common = %{version}-%{release}, mono-web -%description -n %{name}-plugin-mono +%description -n uwsgi-plugin-mono This package contains the mono plugin for uWSGI %endif -%package -n %{name}-plugin-nagios +%package -n uwsgi-plugin-nagios Summary: uWSGI - Plugin for Nagios support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-nagios +%description -n uwsgi-plugin-nagios This package contains the nagios plugin for uWSGI -%package -n %{name}-plugin-notfound +%package -n uwsgi-plugin-notfound Summary: uWSGI - Plugin for notfound support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-notfound +%description -n uwsgi-plugin-notfound This package contains the notfound plugin for uWSGI -%package -n %{name}-plugin-pam +%package -n uwsgi-plugin-pam Summary: uWSGI - Plugin for PAM support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, pam +Requires: uwsgi-plugin-common = %{version}-%{release}, pam -%description -n %{name}-plugin-pam +%description -n uwsgi-plugin-pam This package contains the PAM plugin for uWSGI -%package -n %{name}-plugin-php +%package -n uwsgi-plugin-php Summary: uWSGI - Plugin for PHP support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-php +%description -n uwsgi-plugin-php This package contains the PHP plugin for uWSGI -%package -n %{name}-plugin-pty +%package -n uwsgi-plugin-pty Summary: uWSGI - Plugin for PTY support Group: System Environment/Daemons -Requires: python2, %{name}-plugin-common = %{version}-%{release} +Requires: python2, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-pty +%description -n uwsgi-plugin-pty This package contains the pty plugin for uWSGI -%package -n %{name}-plugin-python2 +%package -n uwsgi-plugin-python2 Summary: uWSGI - Plugin for Python 2 support Group: System Environment/Daemons -Requires: python2, %{name}-plugin-common = %{version}-%{release} +Requires: python2, uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-python < 2.0.16-4 -%description -n %{name}-plugin-python2 +%description -n uwsgi-plugin-python2 This package contains the Python 2 plugin for uWSGI %if %{with python3} -%package -n %{name}-plugin-python%{python3_pkgversion} +%package -n uwsgi-plugin-python%{python3_pkgversion} Summary: uWSGI - Plugin for Python %{python3_version} support Group: System Environment/Daemons -Requires: python%{python3_pkgversion}, %{name}-plugin-common = %{version}-%{release} +Requires: python%{python3_pkgversion}, uwsgi-plugin-common = %{version}-%{release} %if 0%{?rhel} == 7 Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 %endif -%description -n %{name}-plugin-python%{python3_pkgversion} +%description -n uwsgi-plugin-python%{python3_pkgversion} This package contains the Python %{python3_version} plugin for uWSGI %endif %if %{with python3_other} -%package -n %{name}-plugin-python%{python3_other_pkgversion} +%package -n uwsgi-plugin-python%{python3_other_pkgversion} Summary: uWSGI - Plugin for Python %{python3_other_version} support Group: System Environment/Daemons -Requires: python%{python3_other_pkgversion}, %{name}-plugin-common = %{version}-%{release} +Requires: python%{python3_other_pkgversion}, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-python%{python3_other_pkgversion} +%description -n uwsgi-plugin-python%{python3_other_pkgversion} This package contains the Python %{python3_other_version} plugin for uWSGI %endif -%package -n %{name}-plugin-rack +%package -n uwsgi-plugin-rack Summary: uWSGI - Ruby rack plugin Group: System Environment/Daemons -Requires: rubygem-rack, %{name}-plugin-common = %{version}-%{release} +Requires: rubygem-rack, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-rack +%description -n uwsgi-plugin-rack This package contains the rack plugin for uWSGI -%package -n %{name}-plugin-rbthreads +%package -n uwsgi-plugin-rbthreads Summary: uWSGI - Ruby native threads support plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, ruby +Requires: uwsgi-plugin-common = %{version}-%{release}, ruby -%description -n %{name}-plugin-rbthreads +%description -n uwsgi-plugin-rbthreads This package contains the rbthreads plugin for uWSGI %if %{with java} -%package -n %{name}-plugin-ring +%package -n uwsgi-plugin-ring Summary: uWSGI - Clojure/Ring request handler support plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, %{name}-plugin-jvm = %{version}-%{release}, clojure +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release}, clojure -%description -n %{name}-plugin-ring +%description -n uwsgi-plugin-ring This package contains the ring plugin for uWSGI %endif -%package -n %{name}-plugin-rpc +%package -n uwsgi-plugin-rpc Summary: uWSGI - Plugin for RPC support Group: System Environment/Daemons -Requires: rrdtool, %{name}-plugin-common = %{version}-%{release} +Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-rpc +%description -n uwsgi-plugin-rpc This package contains the RPC plugin for uWSGI -%package -n %{name}-plugin-rrdtool +%package -n uwsgi-plugin-rrdtool Summary: uWSGI - Plugin for RRDTool support Group: System Environment/Daemons -Requires: rrdtool, %{name}-plugin-common = %{version}-%{release} +Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-rrdtool +%description -n uwsgi-plugin-rrdtool This package contains the RRD Tool plugin for uWSGI -%package -n %{name}-plugin-ruby +%package -n uwsgi-plugin-ruby Summary: uWSGI - Plugin for Ruby support Group: System Environment/Daemons -Requires: ruby, %{name}-plugin-common = %{version}-%{release} +Requires: ruby, uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-ruby +%description -n uwsgi-plugin-ruby This package contains the ruby19 plugin for uWSGI -%package -n %{name}-plugin-spooler +%package -n uwsgi-plugin-spooler Summary: uWSGI - Plugin for Remote Spooling support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-spooler +%description -n uwsgi-plugin-spooler This package contains the spooler plugin for uWSGI -%package -n %{name}-plugin-sqlite3 +%package -n uwsgi-plugin-sqlite3 Summary: uWSGI - SQLite3 plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, sqlite +Requires: uwsgi-plugin-common = %{version}-%{release}, sqlite -%description -n %{name}-plugin-sqlite3 +%description -n uwsgi-plugin-sqlite3 This package contains the sqlite3 plugin for uWSGI -%package -n %{name}-plugin-ssi +%package -n uwsgi-plugin-ssi Summary: uWSGI - Server Side Includes plugin Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-ssi +%description -n uwsgi-plugin-ssi This package contains the ssi plugin for uWSGI -%package -n %{name}-plugin-python2-tornado +%package -n uwsgi-plugin-python2-tornado Summary: uWSGI - Plugin for Tornado (Python 2) support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, python-tornado +Requires: uwsgi-plugin-common = %{version}-%{release}, python-tornado Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 -%description -n %{name}-plugin-python2-tornado +%description -n uwsgi-plugin-python2-tornado This package contains the tornado (Python 2) plugin for uWSGI %if %{with python3} -%package -n %{name}-plugin-python%{python3_pkgversion}-tornado +%package -n uwsgi-plugin-python%{python3_pkgversion}-tornado Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado +Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado %if 0%{?fedora} && 0%{?fedora} < 29 Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 %endif -%description -n %{name}-plugin-python%{python3_pkgversion}-tornado +%description -n uwsgi-plugin-python%{python3_pkgversion}-tornado This package contains the tornado (Python %{python3_version}) plugin for uWSGI %endif -%package -n %{name}-plugin-ugreen +%package -n uwsgi-plugin-ugreen Summary: uWSGI - Plugin for uGreen support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-ugreen +%description -n uwsgi-plugin-ugreen This package contains the uGreen plugin for uWSGI %if %{with v8} -%package -n %{name}-plugin-v8 +%package -n uwsgi-plugin-v8 Summary: uWSGI - Plugin for v8 support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-v8 +%description -n uwsgi-plugin-v8 This package contains the v8 plugin for uWSGI %endif -%package -n %{name}-plugin-webdav +%package -n uwsgi-plugin-webdav Summary: uWSGI - Plugin for WebDAV support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libattr +Requires: uwsgi-plugin-common = %{version}-%{release}, libattr -%description -n %{name}-plugin-webdav +%description -n uwsgi-plugin-webdav This package contains the webdav plugin for uWSGI -%package -n %{name}-plugin-xattr +%package -n uwsgi-plugin-xattr Summary: uWSGI - Plugin for Extra Attributes support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libattr +Requires: uwsgi-plugin-common = %{version}-%{release}, libattr -%description -n %{name}-plugin-xattr +%description -n uwsgi-plugin-xattr This package contains the xattr plugin for uWSGI -%package -n %{name}-plugin-xslt +%package -n uwsgi-plugin-xslt Summary: uWSGI - Plugin for XSLT transformation support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release}, libxslt +Requires: uwsgi-plugin-common = %{version}-%{release}, libxslt -%description -n %{name}-plugin-xslt +%description -n uwsgi-plugin-xslt This package contains the xslt plugin for uWSGI -%package -n %{name}-plugin-zergpool +%package -n uwsgi-plugin-zergpool Summary: uWSGI - Plugin for zergpool support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-plugin-zergpool +%description -n uwsgi-plugin-zergpool This package contains the zergpool plugin for uWSGI # Routers %if %{with tcp_wrappers} -%package -n %{name}-router-access +%package -n uwsgi-router-access Summary: uWSGI - Plugin for router_access router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-access +%description -n uwsgi-router-access This package contains the router_access plugin for uWSGI %endif -%package -n %{name}-router-basicauth +%package -n uwsgi-router-basicauth Summary: uWSGI - Plugin for Basic Auth router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-basicauth +%description -n uwsgi-router-basicauth This package contains the basicauth plugin for uWSGI -%package -n %{name}-router-cache +%package -n uwsgi-router-cache Summary: uWSGI - Plugin for Cache router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-cache +%description -n uwsgi-router-cache This package contains the cache router plugin for uWSGI -%package -n %{name}-router-expires +%package -n uwsgi-router-expires Summary: uWSGI - Plugin for Expires router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-expires +%description -n uwsgi-router-expires This package contains the expires router plugin for uWSGI -%package -n %{name}-router-fast +%package -n uwsgi-router-fast Summary: uWSGI - Plugin for FastRouter support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-plugin-fastrouter <= 2.0.6 -Provides: %{name}-plugin-fastrouter = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-fastrouter <= 2.0.6 +Provides: uwsgi-plugin-fastrouter = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-fast +%description -n uwsgi-router-fast This package contains the fastrouter (proxy) plugin for uWSGI -%package -n %{name}-router-forkpty +%package -n uwsgi-router-forkpty Summary: uWSGI - Plugin for ForkPTY router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-router-forkpty +%description -n uwsgi-router-forkpty This package contains the ForkPTY router plugin for uWSGI -%package -n %{name}-router-hash +%package -n uwsgi-router-hash Summary: uWSGI - Plugin for Hash router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-hash +%description -n uwsgi-router-hash This package contains the hash router plugin for uWSGI -%package -n %{name}-router-http +%package -n uwsgi-router-http Summary: uWSGI - Plugin for HTTP router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-http +%description -n uwsgi-router-http This package contains the http router plugin for uWSGI -%package -n %{name}-router-memcached +%package -n uwsgi-router-memcached Summary: uWSGI - Plugin for Memcached router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-memcached +%description -n uwsgi-router-memcached This package contains the memcached router plugin for uWSGI -%package -n %{name}-router-metrics +%package -n uwsgi-router-metrics Summary: uWSGI - Plugin for Metrics router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-router-metrics +%description -n uwsgi-router-metrics This package contains the metrics router plugin for uWSGI -%package -n %{name}-router-radius +%package -n uwsgi-router-radius Summary: uWSGI - Plugin for Radius router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-router-radius +%description -n uwsgi-router-radius This package contains the metrics router plugin for uWSGI -%package -n %{name}-router-raw +%package -n uwsgi-router-raw Summary: uWSGI - Plugin for Raw Router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-plugin-rawrouter <= 2.0.6 -Provides: %{name}-plugin-rawrouter = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-rawrouter <= 2.0.6 +Provides: uwsgi-plugin-rawrouter = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-raw +%description -n uwsgi-router-raw This package contains the Raw router plugin for uWSGI -%package -n %{name}-router-redirect +%package -n uwsgi-router-redirect Summary: uWSGI - Plugin for Redirect router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-redirect +%description -n uwsgi-router-redirect This package contains the redirect router plugin for uWSGI -%package -n %{name}-router-redis +%package -n uwsgi-router-redis Summary: uWSGI - Plugin for Redis router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-redis +%description -n uwsgi-router-redis This package contains the redis router plugin for uWSGI -%package -n %{name}-router-rewrite +%package -n uwsgi-router-rewrite Summary: uWSGI - Plugin for Rewrite router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-rewrite +%description -n uwsgi-router-rewrite This package contains the rewrite router plugin for uWSGI -%package -n %{name}-router-spnego +%package -n uwsgi-router-spnego Summary: uWSGI - Plugin for SPNEgo router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-router-spnego +%description -n uwsgi-router-spnego This package contains the spnego router plugin for uWSGI -%package -n %{name}-router-ssl +%package -n uwsgi-router-ssl Summary: uWSGI - Plugin for SSL router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Obsoletes: %{name}-plugin-sslrouter <= 2.0.6 -Provides: %{name}-plugin-sslrouter = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-sslrouter <= 2.0.6 +Provides: uwsgi-plugin-sslrouter = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-ssl +%description -n uwsgi-router-ssl This package contains the SSL router plugin for uWSGI -%package -n %{name}-router-static +%package -n uwsgi-router-static Summary: uWSGI - Plugin for Static router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-static +%description -n uwsgi-router-static This package contains the Static router plugin for uWSGI -%package -n %{name}-router-tuntap +%package -n uwsgi-router-tuntap Summary: uWSGI - Plugin for TUN/TAP router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} -%description -n %{name}-router-tuntap +%description -n uwsgi-router-tuntap This package contains the tuntap router plugin for uWSGI -%package -n %{name}-router-uwsgi +%package -n uwsgi-router-uwsgi Summary: uWSGI - Plugin for uWSGI router support Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-uwsgi +%description -n uwsgi-router-uwsgi This package contains the uwsgi router plugin for uWSGI -%package -n %{name}-router-xmldir +%package -n uwsgi-router-xmldir Summary: uWSGI - Plugin for XMLDir router rupport Group: System Environment/Daemons -Requires: %{name}-plugin-common = %{version}-%{release} -Provides: %{name}-routers = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} -%description -n %{name}-router-xmldir +%description -n uwsgi-router-xmldir This package contains the xmldir router plugin for uWSGI # The rest -%package -n mod_proxy_%{name} +%package -n mod_proxy_uwsgi Summary: uWSGI - Apache2 proxy module Group: System Environment/Daemons -Requires: %{name} = %{version}-%{release}, httpd +Requires: uwsgi = %{version}-%{release}, httpd -%description -n mod_proxy_%{name} +%description -n mod_proxy_uwsgi Fully Apache API compliant proxy module @@ -1202,14 +1202,14 @@ Fully Apache API compliant proxy module %setup -q cp -p %{SOURCE1} buildconf/ %if %{with systemd} -cp -p %{SOURCE2} %{name}.service +cp -p %{SOURCE2} uwsgi.service %else -cp -p %{SOURCE6} %{name}.init +cp -p %{SOURCE6} uwsgi.init %endif -cp -p %{SOURCE3} %{name}.ini +cp -p %{SOURCE3} uwsgi.ini cp -p %{SOURCE4} uwsgi-docs.tar.gz cp -p %{SOURCE5} README.Fedora -echo "plugin_dir = %{_libdir}/%{name}" >> buildconf/$(basename %{SOURCE1}) +echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 %patch1 -p1 %patch2 -p1 @@ -1309,33 +1309,33 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %install -mkdir -p %{buildroot}%{_sysconfdir}/%{name}.d -mkdir -p %{buildroot}%{_usrsrc}/%{name}/%{version} +mkdir -p %{buildroot}%{_sysconfdir}/uwsgi.d +mkdir -p %{buildroot}%{_usrsrc}/uwsgi/%{version} %if %{with systemd} mkdir -p %{buildroot}%{_unitdir} %else mkdir -p %{buildroot}%{_initddir} %endif mkdir -p %{buildroot}%{_sbindir} -mkdir -p %{buildroot}%{_includedir}/%{name} -mkdir -p %{buildroot}%{_libdir}/%{name} +mkdir -p %{buildroot}%{_includedir}/uwsgi +mkdir -p %{buildroot}%{_libdir}/uwsgi mkdir -p %{buildroot}%{_javadir} -mkdir -p %{buildroot}/run/%{name} +mkdir -p %{buildroot}/run/uwsgi mkdir -p %{buildroot}%{_httpd_moddir} %if %{with mono} mkdir -p %{buildroot}%{_monogacdir} %endif mkdir docs tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz -tar -C %{buildroot}%{_usrsrc}/%{name}/%{version} --strip-components=1 -xvzf %{SOURCE0} -cp %{SOURCE1} %{buildroot}%{_usrsrc}/%{name}/%{version}/buildconf/ +tar -C %{buildroot}%{_usrsrc}/uwsgi/%{version} --strip-components=1 -xvzf %{SOURCE0} +cp %{SOURCE1} %{buildroot}%{_usrsrc}/uwsgi/%{version}/buildconf/ cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora -%{__install} -p -m 0755 %{name} %{buildroot}%{_sbindir} -%{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/%{name} -%{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/%{name} +%{__install} -p -m 0755 uwsgi %{buildroot}%{_sbindir} +%{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi +%{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi %{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 %py_byte_compile %{__python} %{buildroot}%{python_sitelib}/ @@ -1353,18 +1353,18 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora %endif %endif %if %{with java} -%{__install} -p -m 0644 plugins/jvm/%{name}.jar %{buildroot}%{_javadir} +%{__install} -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir} %endif %if %{with mono} -gacutil -i plugins/mono/uwsgi.dll -f -package %{name} -root %{buildroot}/usr/lib +gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib %endif -%{__install} -p -m 0644 %{name}.ini %{buildroot}%{_sysconfdir}/%{name}.ini +%{__install} -p -m 0644 uwsgi.ini %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} -%{__install} -p -m 0644 %{name}.service %{buildroot}%{_unitdir}/%{name}.service +%{__install} -p -m 0644 uwsgi.service %{buildroot}%{_unitdir}/uwsgi.service %else -%{__install} -p -m 0755 %{name}.init %{buildroot}%{_initddir}/%{name} +%{__install} -p -m 0755 uwsgi.init %{buildroot}%{_initddir}/uwsgi %endif -%{__install} -p -m 0755 apache2/.libs/mod_proxy_%{name}.so %{buildroot}%{_httpd_moddir}/mod_proxy_%{name}.so +%{__install} -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so %pre @@ -1387,7 +1387,7 @@ echo "Executing systemd post-install tasks" %endif %else echo "Executing System V post-install tasks" -/sbin/chkconfig --add %{name} +/sbin/chkconfig --add uwsgi %endif %preun @@ -1405,8 +1405,8 @@ echo "Executing systemd pre-uninstall tasks" %else echo "Executing System V pre-uninstall tasks" if [ $1 -eq 0 ] ; then - /sbin/service %{name} stop >/dev/null 2>&1 - /sbin/chkconfig --del %{name} + /sbin/service uwsgi stop >/dev/null 2>&1 + /sbin/chkconfig --del uwsgi fi %endif @@ -1425,28 +1425,28 @@ echo "Executing systemd post-uninstall tasks" %else echo "Executing System V post-uninstall tasks" if [ "$1" -ge "1" ] ; then - /sbin/service %{name} condrestart >/dev/null 2>&1 || : + /sbin/service uwsgi condrestart >/dev/null 2>&1 || : fi %endif %files -%{_sbindir}/%{name} -%config(noreplace) %{_sysconfdir}/%{name}.ini +%{_sbindir}/uwsgi +%config(noreplace) %{_sysconfdir}/uwsgi.ini %if %{with systemd} -%config %{_unitdir}/%{name}.service +%config %{_unitdir}/uwsgi.service %else -%{_initddir}/%{name} +%{_initddir}/uwsgi %endif -%dir %{_sysconfdir}/%{name}.d -%dir /run/%{name} +%dir %{_sysconfdir}/uwsgi.d +%dir /run/uwsgi %doc README README.Fedora CHANGELOG %{!?_licensedir:%global license %%doc} %license LICENSE -%files -n %{name}-devel -%{_includedir}/%{name} -%{_usrsrc}/%{name} +%files -n uwsgi-devel +%{_includedir}/uwsgi +%{_usrsrc}/uwsgi %files -n python2-uwsgidecorators %defattr(-,root,root,-) @@ -1464,374 +1464,374 @@ fi %{python3_other_sitelib}/* %endif -%files -n %{name}-docs +%files -n uwsgi-docs %doc docs -%files -n %{name}-plugin-common -%dir %{_libdir}/%{name} -%{_libdir}/%{name}/http_plugin.so -%{_libdir}/%{name}/cgi_plugin.so +%files -n uwsgi-plugin-common +%dir %{_libdir}/uwsgi +%{_libdir}/uwsgi/http_plugin.so +%{_libdir}/uwsgi/cgi_plugin.so # Stats pushers -%files -n %{name}-stats-pusher-file -%{_libdir}/%{name}/stats_pusher_file_plugin.so +%files -n uwsgi-stats-pusher-file +%{_libdir}/uwsgi/stats_pusher_file_plugin.so %if %{with mongodblibs} -%files -n %{name}-stats-pusher-mongodb -%{_libdir}/%{name}/stats_pusher_mongodb_plugin.so +%files -n uwsgi-stats-pusher-mongodb +%{_libdir}/uwsgi/stats_pusher_mongodb_plugin.so %endif -%files -n %{name}-stats-pusher-socket -%{_libdir}/%{name}/stats_pusher_socket_plugin.so +%files -n uwsgi-stats-pusher-socket +%{_libdir}/uwsgi/stats_pusher_socket_plugin.so -%files -n %{name}-stats-pusher-statsd -%{_libdir}/%{name}/stats_pusher_statsd_plugin.so +%files -n uwsgi-stats-pusher-statsd +%{_libdir}/uwsgi/stats_pusher_statsd_plugin.so -%files -n %{name}-stats-pusher-zabbix -%{_libdir}/%{name}/zabbix_plugin.so +%files -n uwsgi-stats-pusher-zabbix +%{_libdir}/uwsgi/zabbix_plugin.so # Alarms -%files -n %{name}-alarm-curl -%{_libdir}/%{name}/alarm_curl_plugin.so +%files -n uwsgi-alarm-curl +%{_libdir}/uwsgi/alarm_curl_plugin.so -%files -n %{name}-alarm-xmpp -%{_libdir}/%{name}/alarm_xmpp_plugin.so +%files -n uwsgi-alarm-xmpp +%{_libdir}/uwsgi/alarm_xmpp_plugin.so # Transformations -%files -n %{name}-transformation-chunked -%{_libdir}/%{name}/transformation_chunked_plugin.so +%files -n uwsgi-transformation-chunked +%{_libdir}/uwsgi/transformation_chunked_plugin.so -%files -n %{name}-transformation-gzip -%{_libdir}/%{name}/transformation_gzip_plugin.so +%files -n uwsgi-transformation-gzip +%{_libdir}/uwsgi/transformation_gzip_plugin.so -%files -n %{name}-transformation-offload -%{_libdir}/%{name}/transformation_offload_plugin.so +%files -n uwsgi-transformation-offload +%{_libdir}/uwsgi/transformation_offload_plugin.so -%files -n %{name}-transformation-template -%{_libdir}/%{name}/transformation_template_plugin.so +%files -n uwsgi-transformation-template +%{_libdir}/uwsgi/transformation_template_plugin.so -%files -n %{name}-transformation-tofile -%{_libdir}/%{name}/transformation_tofile_plugin.so +%files -n uwsgi-transformation-tofile +%{_libdir}/uwsgi/transformation_tofile_plugin.so -%files -n %{name}-transformation-toupper -%{_libdir}/%{name}/transformation_toupper_plugin.so +%files -n uwsgi-transformation-toupper +%{_libdir}/uwsgi/transformation_toupper_plugin.so # Loggers -%files -n %{name}-log-encoder-msgpack -%{_libdir}/%{name}/msgpack_plugin.so +%files -n uwsgi-log-encoder-msgpack +%{_libdir}/uwsgi/msgpack_plugin.so -%files -n %{name}-logger-crypto -%{_libdir}/%{name}/logcrypto_plugin.so +%files -n uwsgi-logger-crypto +%{_libdir}/uwsgi/logcrypto_plugin.so -%files -n %{name}-logger-file -%{_libdir}/%{name}/logfile_plugin.so +%files -n uwsgi-logger-file +%{_libdir}/uwsgi/logfile_plugin.so -%files -n %{name}-logger-graylog2 -%{_libdir}/%{name}/graylog2_plugin.so +%files -n uwsgi-logger-graylog2 +%{_libdir}/uwsgi/graylog2_plugin.so %if %{with mongodblibs} -%files -n %{name}-logger-mongodb -%{_libdir}/%{name}/mongodblog_plugin.so +%files -n uwsgi-logger-mongodb +%{_libdir}/uwsgi/mongodblog_plugin.so %endif -%files -n %{name}-logger-pipe -%{_libdir}/%{name}/logpipe_plugin.so +%files -n uwsgi-logger-pipe +%{_libdir}/uwsgi/logpipe_plugin.so -%files -n %{name}-logger-redis -%{_libdir}/%{name}/redislog_plugin.so +%files -n uwsgi-logger-redis +%{_libdir}/uwsgi/redislog_plugin.so -%files -n %{name}-logger-rsyslog -%{_libdir}/%{name}/rsyslog_plugin.so +%files -n uwsgi-logger-rsyslog +%{_libdir}/uwsgi/rsyslog_plugin.so -%files -n %{name}-logger-socket -%{_libdir}/%{name}/logsocket_plugin.so +%files -n uwsgi-logger-socket +%{_libdir}/uwsgi/logsocket_plugin.so -%files -n %{name}-logger-syslog -%{_libdir}/%{name}/syslog_plugin.so +%files -n uwsgi-logger-syslog +%{_libdir}/uwsgi/syslog_plugin.so %if %{with systemd} -%files -n %{name}-logger-systemd -%{_libdir}/%{name}/systemd_logger_plugin.so +%files -n uwsgi-logger-systemd +%{_libdir}/uwsgi/systemd_logger_plugin.so %endif %if %{with zeromq} -%files -n %{name}-logger-zeromq -%{_libdir}/%{name}/logzmq_plugin.so +%files -n uwsgi-logger-zeromq +%{_libdir}/uwsgi/logzmq_plugin.so %endif # Plugins -%files -n %{name}-plugin-airbrake -%{_libdir}/%{name}/airbrake_plugin.so +%files -n uwsgi-plugin-airbrake +%{_libdir}/uwsgi/airbrake_plugin.so -%files -n %{name}-plugin-cache -%{_libdir}/%{name}/cache_plugin.so +%files -n uwsgi-plugin-cache +%{_libdir}/uwsgi/cache_plugin.so -%files -n %{name}-plugin-carbon -%{_libdir}/%{name}/carbon_plugin.so +%files -n uwsgi-plugin-carbon +%{_libdir}/uwsgi/carbon_plugin.so %if %{with perl} -%files -n %{name}-plugin-psgi -%{_libdir}/%{name}/psgi_plugin.so +%files -n uwsgi-plugin-psgi +%{_libdir}/uwsgi/psgi_plugin.so %if 0%{?fedora} >= 15 -%files -n %{name}-plugin-coroae -%{_libdir}/%{name}/coroae_plugin.so +%files -n uwsgi-plugin-coroae +%{_libdir}/uwsgi/coroae_plugin.so %endif %endif -%files -n %{name}-plugin-cheaper-busyness -%{_libdir}/%{name}/cheaper_busyness_plugin.so +%files -n uwsgi-plugin-cheaper-busyness +%{_libdir}/uwsgi/cheaper_busyness_plugin.so -%files -n %{name}-plugin-cplusplus -%{_libdir}/%{name}/cplusplus_plugin.so +%files -n uwsgi-plugin-cplusplus +%{_libdir}/uwsgi/cplusplus_plugin.so -%files -n %{name}-plugin-curl-cron -%{_libdir}/%{name}/curl_cron_plugin.so +%files -n uwsgi-plugin-curl-cron +%{_libdir}/uwsgi/curl_cron_plugin.so -%files -n %{name}-plugin-dumbloop -%{_libdir}/%{name}/dumbloop_plugin.so +%files -n uwsgi-plugin-dumbloop +%{_libdir}/uwsgi/dumbloop_plugin.so -%files -n %{name}-plugin-dummy -%{_libdir}/%{name}/dummy_plugin.so +%files -n uwsgi-plugin-dummy +%{_libdir}/uwsgi/dummy_plugin.so %if %{with ruby19} -%files -n %{name}-plugin-fiber -%{_libdir}/%{name}/fiber_plugin.so +%files -n uwsgi-plugin-fiber +%{_libdir}/uwsgi/fiber_plugin.so %endif %if %{with go} -%files -n %{name}-plugin-gccgo -%{_libdir}/%{name}/gccgo_plugin.so +%files -n uwsgi-plugin-gccgo +%{_libdir}/uwsgi/gccgo_plugin.so %endif -%files -n %{name}-plugin-geoip -%{_libdir}/%{name}/geoip_plugin.so +%files -n uwsgi-plugin-geoip +%{_libdir}/uwsgi/geoip_plugin.so -%files -n %{name}-plugin-python2-gevent -%{_libdir}/%{name}/gevent_plugin.so +%files -n uwsgi-plugin-python2-gevent +%{_libdir}/uwsgi/gevent_plugin.so %if %{with python3} -%files -n %{name}-plugin-python%{python3_pkgversion}-gevent -%{_libdir}/%{name}/python%{python3_pkgversion}_gevent_plugin.so +%files -n uwsgi-plugin-python%{python3_pkgversion}-gevent +%{_libdir}/uwsgi/python%{python3_pkgversion}_gevent_plugin.so %endif %if %{with python3_other} -%files -n %{name}-plugin-python%{python3_other_pkgversion}-gevent -%{_libdir}/%{name}/python%{python3_other_pkgversion}_gevent_plugin.so +%files -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent +%{_libdir}/uwsgi/python%{python3_other_pkgversion}_gevent_plugin.so %endif %if %{with glusterfs} -%files -n %{name}-plugin-glusterfs -%{_libdir}/%{name}/glusterfs_plugin.so +%files -n uwsgi-plugin-glusterfs +%{_libdir}/uwsgi/glusterfs_plugin.so %endif %if %{with greenlet} -%files -n %{name}-plugin-python2-greenlet -%{_libdir}/%{name}/greenlet_plugin.so +%files -n uwsgi-plugin-python2-greenlet +%{_libdir}/uwsgi/greenlet_plugin.so %if %{with python3} -%files -n %{name}-plugin-python%{python3_pkgversion}-greenlet -%{_libdir}/%{name}/python%{python3_pkgversion}_greenlet_plugin.so +%files -n uwsgi-plugin-python%{python3_pkgversion}-greenlet +%{_libdir}/uwsgi/python%{python3_pkgversion}_greenlet_plugin.so %endif %endif %if %{with gridfs} -%files -n %{name}-plugin-gridfs -%{_libdir}/%{name}/gridfs_plugin.so +%files -n uwsgi-plugin-gridfs +%{_libdir}/uwsgi/gridfs_plugin.so %endif %if %{with java} -%files -n %{name}-plugin-jvm -%{_libdir}/%{name}/jvm_plugin.so +%files -n uwsgi-plugin-jvm +%{_libdir}/uwsgi/jvm_plugin.so %{_javadir}/uwsgi.jar -%files -n %{name}-plugin-jwsgi -%{_libdir}/%{name}/jwsgi_plugin.so +%files -n uwsgi-plugin-jwsgi +%{_libdir}/uwsgi/jwsgi_plugin.so %endif -%files -n %{name}-plugin-ldap -%{_libdir}/%{name}/ldap_plugin.so +%files -n uwsgi-plugin-ldap +%{_libdir}/uwsgi/ldap_plugin.so -%files -n %{name}-plugin-lua -%{_libdir}/%{name}/lua_plugin.so +%files -n uwsgi-plugin-lua +%{_libdir}/uwsgi/lua_plugin.so %if %{with zeromq} -%files -n %{name}-plugin-mongrel2 -%{_libdir}/%{name}/mongrel2_plugin.so +%files -n uwsgi-plugin-mongrel2 +%{_libdir}/uwsgi/mongrel2_plugin.so %endif %if %{with mono} -%files -n %{name}-plugin-mono -%{_libdir}/%{name}/mono_plugin.so -%{_monodir}/%{name}/ -%{_monogacdir}/%{name}/ +%files -n uwsgi-plugin-mono +%{_libdir}/uwsgi/mono_plugin.so +%{_monodir}/uwsgi/ +%{_monogacdir}/uwsgi/ %endif -%files -n %{name}-plugin-nagios -%{_libdir}/%{name}/nagios_plugin.so +%files -n uwsgi-plugin-nagios +%{_libdir}/uwsgi/nagios_plugin.so -%files -n %{name}-plugin-notfound -%{_libdir}/%{name}/notfound_plugin.so +%files -n uwsgi-plugin-notfound +%{_libdir}/uwsgi/notfound_plugin.so -%files -n %{name}-plugin-pam -%{_libdir}/%{name}/pam_plugin.so +%files -n uwsgi-plugin-pam +%{_libdir}/uwsgi/pam_plugin.so -%files -n %{name}-plugin-php -%{_libdir}/%{name}/php_plugin.so +%files -n uwsgi-plugin-php +%{_libdir}/uwsgi/php_plugin.so -%files -n %{name}-plugin-pty -%{_libdir}/%{name}/pty_plugin.so +%files -n uwsgi-plugin-pty +%{_libdir}/uwsgi/pty_plugin.so -%files -n %{name}-plugin-python2 -%{_libdir}/%{name}/python_plugin.so +%files -n uwsgi-plugin-python2 +%{_libdir}/uwsgi/python_plugin.so %if %{with python3} -%files -n %{name}-plugin-python%{python3_pkgversion} -%{_libdir}/%{name}/python%{python3_pkgversion}_plugin.so +%files -n uwsgi-plugin-python%{python3_pkgversion} +%{_libdir}/uwsgi/python%{python3_pkgversion}_plugin.so %endif %if %{with python3_other} -%files -n %{name}-plugin-python%{python3_other_pkgversion} -%{_libdir}/%{name}/python%{python3_other_pkgversion}_plugin.so +%files -n uwsgi-plugin-python%{python3_other_pkgversion} +%{_libdir}/uwsgi/python%{python3_other_pkgversion}_plugin.so %endif -%files -n %{name}-plugin-rack -%{_libdir}/%{name}/rack_plugin.so +%files -n uwsgi-plugin-rack +%{_libdir}/uwsgi/rack_plugin.so %if %{with ruby19} -%files -n %{name}-plugin-rbthreads -%{_libdir}/%{name}/rbthreads_plugin.so +%files -n uwsgi-plugin-rbthreads +%{_libdir}/uwsgi/rbthreads_plugin.so %endif %if %{with java} -%files -n %{name}-plugin-ring -%{_libdir}/%{name}/ring_plugin.so +%files -n uwsgi-plugin-ring +%{_libdir}/uwsgi/ring_plugin.so %endif -%files -n %{name}-plugin-rrdtool -%{_libdir}/%{name}/rrdtool_plugin.so +%files -n uwsgi-plugin-rrdtool +%{_libdir}/uwsgi/rrdtool_plugin.so -%files -n %{name}-plugin-rpc -%{_libdir}/%{name}/rpc_plugin.so +%files -n uwsgi-plugin-rpc +%{_libdir}/uwsgi/rpc_plugin.so -%files -n %{name}-plugin-ruby -%{_libdir}/%{name}/ruby19_plugin.so +%files -n uwsgi-plugin-ruby +%{_libdir}/uwsgi/ruby19_plugin.so -%files -n %{name}-plugin-spooler -%{_libdir}/%{name}/spooler_plugin.so +%files -n uwsgi-plugin-spooler +%{_libdir}/uwsgi/spooler_plugin.so -%files -n %{name}-plugin-sqlite3 -%{_libdir}/%{name}/sqlite3_plugin.so +%files -n uwsgi-plugin-sqlite3 +%{_libdir}/uwsgi/sqlite3_plugin.so -%files -n %{name}-plugin-ssi -%{_libdir}/%{name}/ssi_plugin.so +%files -n uwsgi-plugin-ssi +%{_libdir}/uwsgi/ssi_plugin.so -%files -n %{name}-plugin-python2-tornado -%{_libdir}/%{name}/tornado_plugin.so +%files -n uwsgi-plugin-python2-tornado +%{_libdir}/uwsgi/tornado_plugin.so %if %{with python3} -%files -n %{name}-plugin-python%{python3_pkgversion}-tornado -%{_libdir}/%{name}/python%{python3_pkgversion}_tornado_plugin.so +%files -n uwsgi-plugin-python%{python3_pkgversion}-tornado +%{_libdir}/uwsgi/python%{python3_pkgversion}_tornado_plugin.so %endif -%files -n %{name}-plugin-ugreen -%{_libdir}/%{name}/ugreen_plugin.so +%files -n uwsgi-plugin-ugreen +%{_libdir}/uwsgi/ugreen_plugin.so %if %{with v8} -%files -n %{name}-plugin-v8 -%{_libdir}/%{name}/v8_plugin.so +%files -n uwsgi-plugin-v8 +%{_libdir}/uwsgi/v8_plugin.so %endif -%files -n %{name}-plugin-webdav -%{_libdir}/%{name}/webdav_plugin.so +%files -n uwsgi-plugin-webdav +%{_libdir}/uwsgi/webdav_plugin.so -%files -n %{name}-plugin-xattr -%{_libdir}/%{name}/xattr_plugin.so +%files -n uwsgi-plugin-xattr +%{_libdir}/uwsgi/xattr_plugin.so -%files -n %{name}-plugin-xslt -%{_libdir}/%{name}/xslt_plugin.so +%files -n uwsgi-plugin-xslt +%{_libdir}/uwsgi/xslt_plugin.so -%files -n %{name}-plugin-zergpool -%{_libdir}/%{name}/zergpool_plugin.so +%files -n uwsgi-plugin-zergpool +%{_libdir}/uwsgi/zergpool_plugin.so # Routers %if %{with tcp_wrappers} -%files -n %{name}-router-access -%{_libdir}/%{name}/router_access_plugin.so +%files -n uwsgi-router-access +%{_libdir}/uwsgi/router_access_plugin.so %endif -%files -n %{name}-router-basicauth -%{_libdir}/%{name}/router_basicauth_plugin.so +%files -n uwsgi-router-basicauth +%{_libdir}/uwsgi/router_basicauth_plugin.so -%files -n %{name}-router-cache -%{_libdir}/%{name}/router_cache_plugin.so +%files -n uwsgi-router-cache +%{_libdir}/uwsgi/router_cache_plugin.so -%files -n %{name}-router-expires -%{_libdir}/%{name}/router_expires_plugin.so +%files -n uwsgi-router-expires +%{_libdir}/uwsgi/router_expires_plugin.so -%files -n %{name}-router-fast -%{_libdir}/%{name}/fastrouter_plugin.so +%files -n uwsgi-router-fast +%{_libdir}/uwsgi/fastrouter_plugin.so -%files -n %{name}-router-forkpty -%{_libdir}/%{name}/forkptyrouter_plugin.so +%files -n uwsgi-router-forkpty +%{_libdir}/uwsgi/forkptyrouter_plugin.so -%files -n %{name}-router-hash -%{_libdir}/%{name}/router_hash_plugin.so +%files -n uwsgi-router-hash +%{_libdir}/uwsgi/router_hash_plugin.so -%files -n %{name}-router-http -%{_libdir}/%{name}/router_http_plugin.so +%files -n uwsgi-router-http +%{_libdir}/uwsgi/router_http_plugin.so -%files -n %{name}-router-memcached -%{_libdir}/%{name}/router_memcached_plugin.so +%files -n uwsgi-router-memcached +%{_libdir}/uwsgi/router_memcached_plugin.so -%files -n %{name}-router-metrics -%{_libdir}/%{name}/router_metrics_plugin.so +%files -n uwsgi-router-metrics +%{_libdir}/uwsgi/router_metrics_plugin.so -%files -n %{name}-router-radius -%{_libdir}/%{name}/router_radius_plugin.so +%files -n uwsgi-router-radius +%{_libdir}/uwsgi/router_radius_plugin.so -%files -n %{name}-router-raw -%{_libdir}/%{name}/rawrouter_plugin.so +%files -n uwsgi-router-raw +%{_libdir}/uwsgi/rawrouter_plugin.so -%files -n %{name}-router-redirect -%{_libdir}/%{name}/router_redirect_plugin.so +%files -n uwsgi-router-redirect +%{_libdir}/uwsgi/router_redirect_plugin.so -%files -n %{name}-router-redis -%{_libdir}/%{name}/router_redis_plugin.so +%files -n uwsgi-router-redis +%{_libdir}/uwsgi/router_redis_plugin.so -%files -n %{name}-router-rewrite -%{_libdir}/%{name}/router_rewrite_plugin.so +%files -n uwsgi-router-rewrite +%{_libdir}/uwsgi/router_rewrite_plugin.so -%files -n %{name}-router-spnego -%{_libdir}/%{name}/router_spnego_plugin.so +%files -n uwsgi-router-spnego +%{_libdir}/uwsgi/router_spnego_plugin.so -%files -n %{name}-router-ssl -%{_libdir}/%{name}/sslrouter_plugin.so +%files -n uwsgi-router-ssl +%{_libdir}/uwsgi/sslrouter_plugin.so -%files -n %{name}-router-static -%{_libdir}/%{name}/router_static_plugin.so +%files -n uwsgi-router-static +%{_libdir}/uwsgi/router_static_plugin.so %if %{with tuntap} -%files -n %{name}-router-tuntap -%{_libdir}/%{name}/tuntap_plugin.so +%files -n uwsgi-router-tuntap +%{_libdir}/uwsgi/tuntap_plugin.so %endif -%files -n %{name}-router-uwsgi -%{_libdir}/%{name}/router_uwsgi_plugin.so +%files -n uwsgi-router-uwsgi +%{_libdir}/uwsgi/router_uwsgi_plugin.so -%files -n %{name}-router-xmldir -%{_libdir}/%{name}/router_xmldir_plugin.so +%files -n uwsgi-router-xmldir +%{_libdir}/uwsgi/router_xmldir_plugin.so # The rest -%files -n mod_proxy_%{name} -%{_httpd_moddir}/mod_proxy_%{name}.so +%files -n mod_proxy_uwsgi +%{_httpd_moddir}/mod_proxy_uwsgi.so %changelog From a85dc12a36aa897d081615db3d392bb96d3c105a Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 19:00:15 -0500 Subject: [PATCH 281/427] Use install command instead of %{__install} "Macro forms of system executables SHOULD NOT be used..." https://fedoraproject.org/wiki/Packaging:Guidelines#Macros --- uwsgi.spec | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 77bea1e..6f2e546 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1333,38 +1333,38 @@ cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora -%{__install} -p -m 0755 uwsgi %{buildroot}%{_sbindir} -%{__install} -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi -%{__install} -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi -%{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py +install -p -m 0755 uwsgi %{buildroot}%{_sbindir} +install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi +install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 %py_byte_compile %{__python} %{buildroot}%{python_sitelib}/ %endif %if %{with python3} -%{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 %py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/ %endif %endif %if %{with python3_other} -%{__install} -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 %py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/ %endif %endif %if %{with java} -%{__install} -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir} +install -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir} %endif %if %{with mono} gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib %endif -%{__install} -p -m 0644 uwsgi.ini %{buildroot}%{_sysconfdir}/uwsgi.ini +install -p -m 0644 uwsgi.ini %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} -%{__install} -p -m 0644 uwsgi.service %{buildroot}%{_unitdir}/uwsgi.service +install -p -m 0644 uwsgi.service %{buildroot}%{_unitdir}/uwsgi.service %else -%{__install} -p -m 0755 uwsgi.init %{buildroot}%{_initddir}/uwsgi +install -p -m 0755 uwsgi.init %{buildroot}%{_initddir}/uwsgi %endif -%{__install} -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so +install -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so %pre From 74ad15ed91f20b14fe7587c9461f38d56e93551b Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 19:02:33 -0500 Subject: [PATCH 282/427] Use %{systemd_requires} macro --- uwsgi.spec | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6f2e546..351bdcb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -229,9 +229,7 @@ Obsoletes: uwsgi-plugin-admin <= 2.0.6 Requires(pre): shadow-utils %if %{with systemd} -Requires(post): systemd-units -Requires(preun): systemd-units -Requires(postun): systemd-units +%{?systemd_requires} %else Requires(post): chkconfig Requires(preun): chkconfig From ebe8795458f5fa4df9f91ad8c7a32338448b8c42 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 19:40:55 -0500 Subject: [PATCH 283/427] Install files directly from %{_sourcedir} when possible --- uwsgi.spec | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 351bdcb..15eefc9 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1199,15 +1199,8 @@ Fully Apache API compliant proxy module %prep %setup -q cp -p %{SOURCE1} buildconf/ -%if %{with systemd} -cp -p %{SOURCE2} uwsgi.service -%else -cp -p %{SOURCE6} uwsgi.init -%endif -cp -p %{SOURCE3} uwsgi.ini -cp -p %{SOURCE4} uwsgi-docs.tar.gz +echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/fedora.ini cp -p %{SOURCE5} README.Fedora -echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/$(basename %{SOURCE1}) %patch0 -p1 %patch1 -p1 %patch2 -p1 @@ -1324,7 +1317,7 @@ mkdir -p %{buildroot}%{_httpd_moddir} mkdir -p %{buildroot}%{_monogacdir} %endif mkdir docs -tar -C docs/ --strip-components=1 -xvzf uwsgi-docs.tar.gz +tar -C docs/ --strip-components=1 -xvzf %{SOURCE4} tar -C %{buildroot}%{_usrsrc}/uwsgi/%{version} --strip-components=1 -xvzf %{SOURCE0} cp %{SOURCE1} %{buildroot}%{_usrsrc}/uwsgi/%{version}/buildconf/ cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG @@ -1356,11 +1349,11 @@ install -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir} %if %{with mono} gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib %endif -install -p -m 0644 uwsgi.ini %{buildroot}%{_sysconfdir}/uwsgi.ini +install -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} -install -p -m 0644 uwsgi.service %{buildroot}%{_unitdir}/uwsgi.service +install -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service %else -install -p -m 0755 uwsgi.init %{buildroot}%{_initddir}/uwsgi +install -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi %endif install -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so From d4ea6610190bc57b75a2fb5ddff760b467a0134a Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 19:54:03 -0500 Subject: [PATCH 284/427] Remove redundant mkdir calls --- uwsgi.spec | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 15eefc9..0bb0923 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1302,17 +1302,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %install mkdir -p %{buildroot}%{_sysconfdir}/uwsgi.d mkdir -p %{buildroot}%{_usrsrc}/uwsgi/%{version} -%if %{with systemd} -mkdir -p %{buildroot}%{_unitdir} -%else -mkdir -p %{buildroot}%{_initddir} -%endif -mkdir -p %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_includedir}/uwsgi mkdir -p %{buildroot}%{_libdir}/uwsgi -mkdir -p %{buildroot}%{_javadir} mkdir -p %{buildroot}/run/uwsgi -mkdir -p %{buildroot}%{_httpd_moddir} %if %{with mono} mkdir -p %{buildroot}%{_monogacdir} %endif @@ -1324,7 +1316,7 @@ cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora -install -p -m 0755 uwsgi %{buildroot}%{_sbindir} +install -D -p -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py @@ -1344,18 +1336,18 @@ install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uw %endif %endif %if %{with java} -install -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir} +install -D -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir}/uwsgi.jar %endif %if %{with mono} gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib %endif -install -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini +install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} -install -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service +install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service %else -install -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi +install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi %endif -install -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so +install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so %pre From 9c0935432ac9ef8f6affdf87fc5997d70deb888b Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 20:08:07 -0500 Subject: [PATCH 285/427] Latest upstream (rhbz#1549354) --- .gitignore | 2 ++ sources | 4 ++-- uwsgi-2.0.16-strict.patch | 48 --------------------------------------- uwsgi.spec | 22 ++++++++---------- 4 files changed, 13 insertions(+), 63 deletions(-) delete mode 100644 uwsgi-2.0.16-strict.patch diff --git a/.gitignore b/.gitignore index 0049807..9cac662 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,5 @@ /uwsgi-docs-1610d37.tar.gz /uwsgi-2.0.16.tar.gz /uwsgi-docs-eb4ad98.tar.gz +/uwsgi-2.0.17.1.tar.gz +/uwsgi-docs-32a8f73.tar.gz diff --git a/sources b/sources index 3588511..e574c01 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.16.tar.gz) = 2f80da366e463971400648fc8dcc9d7a5b51f03cba0b1ce08ff9e8ed75f0955e2014c84892d9991bd7a6f6a4a6b4ac819477f8e4afeded258d3147b5becb2e77 -SHA512 (uwsgi-docs-eb4ad98.tar.gz) = 3428ed012197bb9bb8b519fa379546783d1ca22795535da46f6b000cb9ead2cad626ceba01b0b6e5998dd498471372d9e12a25fad06c94252ea60c3920c6af50 +SHA512 (uwsgi-2.0.17.1.tar.gz) = 10d357961fde3a3f5f8e77986cc647313f95a33243e24c2afc482fce21df68a8ae48f90e7b5b76d7edc3cf8fd474d99823d6d60ef7477349abc65a319222f11b +SHA512 (uwsgi-docs-32a8f73.tar.gz) = 687240d9c33cb44061b3e43746354a14cfa49162ee25100c97866c0405878b9bc62164b6dbe2acae451edb674d9fd900933062ebd5755b728eeec3f7fe7eda36 diff --git a/uwsgi-2.0.16-strict.patch b/uwsgi-2.0.16-strict.patch deleted file mode 100644 index 363f837..0000000 --- a/uwsgi-2.0.16-strict.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up uwsgi-2.0.16/plugins/rack/rack_plugin.c.strict uwsgi-2.0.16/plugins/rack/rack_plugin.c ---- uwsgi-2.0.16/plugins/rack/rack_plugin.c.strict 2018-02-10 11:00:57.000000000 +0100 -+++ uwsgi-2.0.16/plugins/rack/rack_plugin.c 2018-03-29 18:02:35.274649402 +0200 -@@ -71,7 +71,7 @@ static struct uwsgi_buffer *uwsgi_ruby_e - - static struct uwsgi_buffer *uwsgi_ruby_exception_msg(struct wsgi_request *wsgi_req) { - VALUE err = rb_errinfo(); -- VALUE e = rb_funcall(err, rb_intern("message"), 0, 0); -+ VALUE e = rb_funcall(err, rb_intern("message"), 0); - struct uwsgi_buffer *ub = uwsgi_buffer_new(RSTRING_LEN(e)); - if (uwsgi_buffer_append(ub, RSTRING_PTR(e), RSTRING_LEN(e))) { - uwsgi_buffer_destroy(ub); -@@ -114,7 +114,7 @@ error: - static void uwsgi_ruby_exception_log(struct wsgi_request *wsgi_req) { - VALUE err = rb_errinfo(); - VALUE eclass = rb_class_name(rb_class_of(err)); -- VALUE msg = rb_funcall(err, rb_intern("message"), 0, 0); -+ VALUE msg = rb_funcall(err, rb_intern("message"), 0); - - VALUE ary = rb_funcall(err, rb_intern("backtrace"), 0); - int i; -diff -up uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c.strict uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c ---- uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c.strict 2018-02-10 11:00:57.000000000 +0100 -+++ uwsgi-2.0.16/plugins/router_basicauth/router_basicauth.c 2018-03-29 18:02:57.311779724 +0200 -@@ -2,7 +2,10 @@ - - #ifdef UWSGI_ROUTING - --#if defined(__linux__) && defined(__GLIBC__) -+#if defined(__linux__) && (defined(__GLIBC__) && __GLIBC__ == 2) && \ -+ (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4) -+ /* work around glibc-2.2.5 bug, -+ * has been fixed at some time in glibc-2.3.X */ - #include - #elif defined(__CYGWIN__) - #include -@@ -66,7 +69,10 @@ static uint16_t htpasswd_check(char *fil - - if (clen > 13) cpwd[13] = 0; - --#if defined(__linux__) && defined(__GLIBC__) -+#if defined(__linux__) && (defined(__GLIBC__) && __GLIBC__ == 2) && \ -+ (defined(__GLIBC_MINOR__) && __GLIBC_MINOR__ >= 2 && __GLIBC_MINOR__ < 4) -+ /* work around glibc-2.2.5 bug, -+ * has been fixed at some time in glibc-2.3.X */ - struct crypt_data cd; - cd.initialized = 0; - // we do as nginx here diff --git a/uwsgi.spec b/uwsgi.spec index 0bb0923..bd3e75a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,12 +1,8 @@ -# Version -%global majornumber 2 -%global minornumber 0 -%global releasenumber 16 - # Documentation sources: -%global commit eb4ad986cba70ed4acc44699e80965c1175aa323 +%global commit 32a8f7304d0e705d36dd9644707552939c67f547 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs + %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} @@ -89,7 +85,7 @@ %bcond_without systemd # el7 does have python3 %bcond_without python3 -# el 7 has another version of python3 +# el7 has another version of python3 %bcond_without python3_other # el7 doesn't have zeromq %bcond_with zeromq @@ -122,8 +118,8 @@ %endif Name: uwsgi -Version: %{majornumber}.%{minornumber}.%{releasenumber} -Release: 7%{?dist} +Version: 2.0.17.1 +Release: 1%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -143,8 +139,6 @@ Patch3: uwsgi_fix_lua.patch Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch -# https://github.com/unbit/uwsgi/pull/1768 -Patch8: uwsgi-2.0.16-strict.patch # https://github.com/unbit/uwsgi/pull/1772 Patch9: uwsgi-2.0.16-glfs.patch BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel @@ -1214,7 +1208,6 @@ cp -p %{SOURCE5} README.Fedora %if %{with mono} %patch7 -p1 %endif -%patch8 -p1 -b .strict %patch9 -p1 -b .glfs #disable plug-ins @@ -1312,7 +1305,7 @@ mkdir docs tar -C docs/ --strip-components=1 -xvzf %{SOURCE4} tar -C %{buildroot}%{_usrsrc}/uwsgi/%{version} --strip-components=1 -xvzf %{SOURCE0} cp %{SOURCE1} %{buildroot}%{_usrsrc}/uwsgi/%{version}/buildconf/ -cp docs/Changelog-%{majornumber}.%{minornumber}.%{releasenumber}.rst CHANGELOG +cp docs/Changelog-%{version}.rst CHANGELOG rm -f docs/.gitignore echo "%{commit}, i.e. this:" >> README.Fedora echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora @@ -1818,6 +1811,9 @@ fi %changelog +* Mon Jul 09 2018 Carl George - 2.0.17.1-1 +- Latest upstream (rhbz#1549354) + * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild From 0d6a6e469d4ffa2c34b6054aef3b3018f158b394 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 20:24:25 -0500 Subject: [PATCH 286/427] Enable uwsgi-plugin-coroae on EL7 --- uwsgi.spec | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index bd3e75a..9fe1b39 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -92,7 +92,7 @@ # el7 does have greenlet %bcond_without greenlet # el7 does have perl-PSGI -# el7 doesn't have perl-Coro +# el7 does have perl-Coro %bcond_without perl # el7 can now build glusterfs but only on x86_64 %ifnarch x86_64 @@ -183,10 +183,7 @@ BuildRequires: GeoIP-devel, libevent-devel, zlib-devel BuildRequires: openldap-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel %if %{with perl} -BuildRequires: perl-devel, perl-ExtUtils-Embed -%if 0%{?fedora} >= 15 -BuildRequires: perl-Coro -%endif +BuildRequires: perl-devel, perl-ExtUtils-Embed, perl-Coro %endif %if %{with zeromq} BuildRequires: zeromq-devel @@ -568,7 +565,6 @@ Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-psgi This package contains the PSGI plugin for uWSGI -%if 0%{?fedora} >= 15 %package -n uwsgi-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Group: System Environment/Daemons @@ -577,7 +573,6 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{ver %description -n uwsgi-plugin-coroae This package contains the coroae plugin for uWSGI %endif -%endif %package -n uwsgi-plugin-cheaper-busyness Summary: uWSGI - Plugin for Cheaper Busyness algos @@ -1262,10 +1257,8 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin %endif %if %{with perl} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/psgi fedora -%if 0%{?fedora} >= 15 CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/coroae fedora %endif -%endif %if %{with zeromq} CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/logzmq fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongrel2 fedora @@ -1554,11 +1547,9 @@ fi %files -n uwsgi-plugin-psgi %{_libdir}/uwsgi/psgi_plugin.so -%if 0%{?fedora} >= 15 %files -n uwsgi-plugin-coroae %{_libdir}/uwsgi/coroae_plugin.so %endif -%endif %files -n uwsgi-plugin-cheaper-busyness %{_libdir}/uwsgi/cheaper_busyness_plugin.so @@ -1813,6 +1804,7 @@ fi %changelog * Mon Jul 09 2018 Carl George - 2.0.17.1-1 - Latest upstream (rhbz#1549354) +- Enable uwsgi-plugin-coroae on EL7 * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild From 509df149e9b69774d751be99deb89b60971d8527 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 20:26:31 -0500 Subject: [PATCH 287/427] Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) --- uwsgi.service | 2 -- uwsgi.spec | 6 ++++-- uwsgi.tmpfiles | 1 + 3 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 uwsgi.tmpfiles diff --git a/uwsgi.service b/uwsgi.service index 939890f..20954e3 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -4,8 +4,6 @@ After=syslog.target [Service] EnvironmentFile=-/etc/sysconfig/uwsgi -ExecStartPre=/bin/mkdir -p /run/uwsgi -ExecStartPre=/bin/chown uwsgi:uwsgi /run/uwsgi ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini ExecReload=/bin/kill -HUP $MAINPID KillSignal=SIGINT diff --git a/uwsgi.spec b/uwsgi.spec index 9fe1b39..ae0ca23 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,6 +131,7 @@ Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Source5: README.Fedora Source6: uwsgi.init +Source7: uwsgi.tmpfiles Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch @@ -1290,7 +1291,6 @@ mkdir -p %{buildroot}%{_sysconfdir}/uwsgi.d mkdir -p %{buildroot}%{_usrsrc}/uwsgi/%{version} mkdir -p %{buildroot}%{_includedir}/uwsgi mkdir -p %{buildroot}%{_libdir}/uwsgi -mkdir -p %{buildroot}/run/uwsgi %if %{with mono} mkdir -p %{buildroot}%{_monogacdir} %endif @@ -1330,6 +1330,7 @@ gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service +install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf %else install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi %endif @@ -1404,11 +1405,11 @@ fi %config(noreplace) %{_sysconfdir}/uwsgi.ini %if %{with systemd} %config %{_unitdir}/uwsgi.service +%{_tmpfilesdir}/uwsgi.conf %else %{_initddir}/uwsgi %endif %dir %{_sysconfdir}/uwsgi.d -%dir /run/uwsgi %doc README README.Fedora CHANGELOG %{!?_licensedir:%global license %%doc} %license LICENSE @@ -1805,6 +1806,7 @@ fi * Mon Jul 09 2018 Carl George - 2.0.17.1-1 - Latest upstream (rhbz#1549354) - Enable uwsgi-plugin-coroae on EL7 +- Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild diff --git a/uwsgi.tmpfiles b/uwsgi.tmpfiles new file mode 100644 index 0000000..293cea5 --- /dev/null +++ b/uwsgi.tmpfiles @@ -0,0 +1 @@ +d /run/uwsgi 0775 uwsgi uwsgi From b55f3b27879baca86ac2f09566422e8681960535 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 20:34:40 -0500 Subject: [PATCH 288/427] Use /var/run/uwsgi when not using systemd --- uwsgi.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ae0ca23..6035d10 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1291,6 +1291,9 @@ mkdir -p %{buildroot}%{_sysconfdir}/uwsgi.d mkdir -p %{buildroot}%{_usrsrc}/uwsgi/%{version} mkdir -p %{buildroot}%{_includedir}/uwsgi mkdir -p %{buildroot}%{_libdir}/uwsgi +%if %{without systemd} +install -d -m 0775 %{buildroot}%{_localstatedir}/run/uwsgi +%endif %if %{with mono} mkdir -p %{buildroot}%{_monogacdir} %endif @@ -1340,7 +1343,7 @@ install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_modd %pre getent group uwsgi >/dev/null || groupadd -r uwsgi getent passwd uwsgi >/dev/null || \ - useradd -r -g uwsgi -d /run/uwsgi -s /sbin/nologin \ + useradd -r -g uwsgi -d %{!?with_systemd:%{_localstatedir}}/run/uwsgi -s /sbin/nologin \ -c "uWSGI daemon user" uwsgi exit 0 @@ -1410,6 +1413,9 @@ fi %{_initddir}/uwsgi %endif %dir %{_sysconfdir}/uwsgi.d +%if %{without systemd} +%attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi +%endif %doc README README.Fedora CHANGELOG %{!?_licensedir:%global license %%doc} %license LICENSE @@ -1807,6 +1813,7 @@ fi - Latest upstream (rhbz#1549354) - Enable uwsgi-plugin-coroae on EL7 - Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) +- Use /var/run/uwsgi when not using systemd * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild From a18b816fc2daf22909e833c40228ab2ed5810479 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 21:50:28 -0500 Subject: [PATCH 289/427] Build with versioned python command --- uwsgi.spec | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6035d10..e499e48 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1223,7 +1223,7 @@ sed -in "s/mono, //" buildconf/fedora.ini %build -CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" python uwsgiconfig.py --build fedora.ini +CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --build fedora.ini %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent @@ -1234,55 +1234,55 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent %endif %if %{with mongodblibs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongodblog fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" python uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mongodblog fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mono fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mono fedora %endif %if %{with v8} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/v8 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/v8 fedora %endif %if %{with go} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/gccgo fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gccgo fedora %endif %if %{with ruby19} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/fiber fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/rbthreads fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/fiber fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/rbthreads fedora %endif %if %{with systemd} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/systemd_logger fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/systemd_logger fedora %endif %if %{with tuntap} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/tuntap fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/tuntap fedora %endif %if %{with perl} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/psgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/coroae fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/psgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/coroae fedora %endif %if %{with zeromq} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/logzmq fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/mongrel2 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/logzmq fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mongrel2 fedora %endif %if %{with greenlet} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/greenlet fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/greenlet fedora %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet %endif %endif %if %{with glusterfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/glusterfs fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/glusterfs fedora %endif %if %{with gridfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/gridfs fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gridfs fedora %endif %if %{with java} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/jvm fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/jwsgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/ring fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/jvm fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/jwsgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/ring fedora %endif %if %{with tcp_wrappers} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" python uwsgiconfig.py --plugin plugins/router_access fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/router_access fedora %endif %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c @@ -1814,6 +1814,7 @@ fi - Enable uwsgi-plugin-coroae on EL7 - Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) - Use /var/run/uwsgi when not using systemd +- Build with versioned python command * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild From 146845f7f095f482ec9bf7e315cdca477b5114ef Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 22:02:25 -0500 Subject: [PATCH 290/427] Remove %%config from systemd unit file https://fedoraproject.org/wiki/Packaging:Systemd#.25files_section --- uwsgi.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e499e48..296e591 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1407,7 +1407,7 @@ fi %{_sbindir}/uwsgi %config(noreplace) %{_sysconfdir}/uwsgi.ini %if %{with systemd} -%config %{_unitdir}/uwsgi.service +%{_unitdir}/uwsgi.service %{_tmpfilesdir}/uwsgi.conf %else %{_initddir}/uwsgi @@ -1815,6 +1815,7 @@ fi - Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) - Use /var/run/uwsgi when not using systemd - Build with versioned python command +- Remove %%config from systemd unit file * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild From c23e76ace5f3cae74ae9d37124584b03574fcc98 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 8 Jul 2018 22:51:35 -0500 Subject: [PATCH 291/427] Disable greenlet plugin on EL7 --- uwsgi.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 296e591..596e139 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -89,8 +89,8 @@ %bcond_without python3_other # el7 doesn't have zeromq %bcond_with zeromq -# el7 does have greenlet -%bcond_without greenlet +# el7 does have greenlet, but only on x86_64 +%bcond_with greenlet # el7 does have perl-PSGI # el7 does have perl-Coro %bcond_without perl @@ -1816,6 +1816,7 @@ fi - Use /var/run/uwsgi when not using systemd - Build with versioned python command - Remove %%config from systemd unit file +- Disable greenlet plugin on EL7 * Tue Jul 03 2018 Petr Pisar - 2.0.16-7 - Perl 5.28 rebuild From 71365b638df80fb4d6e54b9e4e3413b9ccf2b320 Mon Sep 17 00:00:00 2001 From: Jason Tibbitts Date: Tue, 10 Jul 2018 01:43:51 -0500 Subject: [PATCH 292/427] Remove needless use of %defattr --- uwsgi.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 596e139..ddcea41 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1425,18 +1425,15 @@ fi %{_usrsrc}/uwsgi %files -n python2-uwsgidecorators -%defattr(-,root,root,-) %{python_sitelib}/* %if %{with python3} %files -n python%{python3_pkgversion}-uwsgidecorators -%defattr(-,root,root,-) %{python3_sitelib}/* %endif %if %{with python3_other} %files -n python%{python3_other_pkgversion}-uwsgidecorators -%defattr(-,root,root,-) %{python3_other_sitelib}/* %endif From ac629b39a4b852d2ed3dda3629cdc3dd1bff9023 Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 12 Jul 2018 17:54:55 -0500 Subject: [PATCH 293/427] Remove obsolete macro fallback --- uwsgi.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ddcea41..b9d3d91 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1417,7 +1417,6 @@ fi %attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi %endif %doc README README.Fedora CHANGELOG -%{!?_licensedir:%global license %%doc} %license LICENSE %files -n uwsgi-devel From 23e28f656126673fca72b5e5494b724e1455981c Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 12 Jul 2018 17:56:33 -0500 Subject: [PATCH 294/427] Make python2-uwsgidecorators own the right files (rhbz#1600721) --- uwsgi.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index b9d3d91..4b8a9a8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -119,7 +119,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1308,9 +1308,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora install -D -p -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi -install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python_sitelib}/uwsgidecorators.py +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python2_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 -%py_byte_compile %{__python} %{buildroot}%{python_sitelib}/ +%py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/ %endif %if %{with python3} install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py @@ -1424,7 +1424,7 @@ fi %{_usrsrc}/uwsgi %files -n python2-uwsgidecorators -%{python_sitelib}/* +%{python2_sitelib}/* %if %{with python3} %files -n python%{python3_pkgversion}-uwsgidecorators @@ -1805,6 +1805,9 @@ fi %changelog +* Thu Jul 12 2018 Carl George - 2.0.17.1-2 +- Make python2-uwsgidecorators own the right files (rhbz#1600721) + * Mon Jul 09 2018 Carl George - 2.0.17.1-1 - Latest upstream (rhbz#1549354) - Enable uwsgi-plugin-coroae on EL7 From 04976fdccaf70afdfdd77d6bab67e3f44dc8cf8f Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 12 Jul 2018 17:57:39 -0500 Subject: [PATCH 295/427] Be more explicit with uwsgidecorators files --- uwsgi.spec | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 4b8a9a8..b741c4d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1310,18 +1310,18 @@ install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python2_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 -%py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/ +%py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/uwsgidecorators.py %endif %if %{with python3} install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 -%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/ +%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/uwsgidecorators.py %endif %endif %if %{with python3_other} install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 -%py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/ +%py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py %endif %endif %if %{with java} @@ -1424,16 +1424,18 @@ fi %{_usrsrc}/uwsgi %files -n python2-uwsgidecorators -%{python2_sitelib}/* +%{python2_sitelib}/uwsgidecorators.py* %if %{with python3} %files -n python%{python3_pkgversion}-uwsgidecorators -%{python3_sitelib}/* +%{python3_sitelib}/uwsgidecorators.py +%{python3_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_version_nodots}*.py* %endif %if %{with python3_other} %files -n python%{python3_other_pkgversion}-uwsgidecorators -%{python3_other_sitelib}/* +%{python3_other_sitelib}/uwsgidecorators.py +%{python3_other_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_other_version_nodots}*.py* %endif %files -n uwsgi-docs @@ -1807,6 +1809,7 @@ fi %changelog * Thu Jul 12 2018 Carl George - 2.0.17.1-2 - Make python2-uwsgidecorators own the right files (rhbz#1600721) +- Be more explicit with uwsgidecorators files * Mon Jul 09 2018 Carl George - 2.0.17.1-1 - Latest upstream (rhbz#1549354) From ebddc2497dfe1e9029b717f3563d7d94b6908df9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tadej=20Jane=C5=BE?= Date: Sat, 14 Jul 2018 21:21:21 +0200 Subject: [PATCH 296/427] Re-enable greenlet plugin on EL7 Python 3 version is always built. Python 2 version is only built on x86_64. --- uwsgi.spec | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index b741c4d..5318a10 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -16,7 +16,7 @@ %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq -%bcond_without greenlet +%bcond_without python2_greenlet %bcond_without perl %bcond_without glusterfs %bcond_without java @@ -89,8 +89,12 @@ %bcond_without python3_other # el7 doesn't have zeromq %bcond_with zeromq -# el7 does have greenlet, but only on x86_64 -%bcond_with greenlet +# el7 does have python-greenlet, but only on x86_64 +%ifarch x86_64 +%bcond_without python2_greenlet +%else +%bcond_with python2_greenlet +%endif # el7 does have perl-PSGI # el7 does have perl-Coro %bcond_without perl @@ -119,7 +123,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -153,12 +157,12 @@ BuildRequires: python%{python3_pkgversion}-devel %if %{with python3_other} BuildRequires: python%{python3_other_pkgversion}-devel %endif -%if %{with greenlet} +%if %{with python2_greenlet} BuildRequires: python-greenlet-devel +%endif %if %{with python3} BuildRequires: python%{python3_pkgversion}-greenlet-devel %endif -%endif %if %{with glusterfs} BuildRequires: glusterfs-devel, glusterfs-api-devel %endif @@ -678,7 +682,7 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api This package contains the glusterfs plugin for uWSGI %endif -%if %{with greenlet} +%if %{with python2_greenlet} %package -n uwsgi-plugin-python2-greenlet Summary: uWSGI - Plugin for Python 2 Greenlet support Group: System Environment/Daemons @@ -687,6 +691,7 @@ Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 %description -n uwsgi-plugin-python2-greenlet This package contains the Python 2 greenlet plugin for uWSGI +%endif %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet @@ -697,7 +702,6 @@ Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkg %description -n uwsgi-plugin-python%{python3_pkgversion}-greenlet This package contains the Python %{python3_version} greenlet plugin for uWSGI %endif -%endif %if %{with gridfs} %package -n uwsgi-plugin-gridfs @@ -1264,12 +1268,12 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py -- CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/logzmq fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mongrel2 fedora %endif -%if %{with greenlet} +%if %{with python2_greenlet} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/greenlet fedora +%endif %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet %endif -%endif %if %{with glusterfs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/glusterfs fedora %endif @@ -1602,15 +1606,15 @@ fi %{_libdir}/uwsgi/glusterfs_plugin.so %endif -%if %{with greenlet} +%if %{with python2_greenlet} %files -n uwsgi-plugin-python2-greenlet %{_libdir}/uwsgi/greenlet_plugin.so +%endif %if %{with python3} %files -n uwsgi-plugin-python%{python3_pkgversion}-greenlet %{_libdir}/uwsgi/python%{python3_pkgversion}_greenlet_plugin.so %endif -%endif %if %{with gridfs} %files -n uwsgi-plugin-gridfs @@ -1807,6 +1811,11 @@ fi %changelog +* Sat Jul 14 2018 Tadej Janež - 2.0.17.1-3 +- Re-enable greenlet plugin on EL7: + - Python 3 version is always built + - Python 2 version is only built on x86_64 + * Thu Jul 12 2018 Carl George - 2.0.17.1-2 - Make python2-uwsgidecorators own the right files (rhbz#1600721) - Be more explicit with uwsgidecorators files From 7477451151e49c51511f395cf21939539eaca0ed Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 12 Sep 2018 08:12:35 -0500 Subject: [PATCH 297/427] Drop mod_proxy_uwsgi subpackage on Fedora, as this module now provided by httpd rhbz#1574335 --- uwsgi.spec | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 5318a10..02a0b17 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -20,6 +20,9 @@ %bcond_without perl %bcond_without glusterfs %bcond_without java +# Fedora httpd includes mod_proxy_uwsgi +# https://bugzilla.redhat.com/show_bug.cgi?id=1574335 +%bcond_with mod_proxy_uwsgi #mono %ifnarch %{mono_arches} %bcond_with mono @@ -68,6 +71,8 @@ # el6 doesn't have perl-PSGI # el6 does have perl-Coro %bcond_with perl +# el6 httpd does not include mod_proxy_uwsgi +%bcond_without mod_proxy_uwsgi # this fails in el not sure why %bcond_with gridfs %bcond_with tuntap @@ -98,6 +103,8 @@ # el7 does have perl-PSGI # el7 does have perl-Coro %bcond_without perl +# el7 httpd does not include mod_proxy_uwsgi +%bcond_without mod_proxy_uwsgi # el7 can now build glusterfs but only on x86_64 %ifnarch x86_64 %bcond_with glusterfs @@ -123,7 +130,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1181,6 +1188,7 @@ This package contains the xmldir router plugin for uWSGI # The rest +%if %{with mod_proxy_uwsgi} %package -n mod_proxy_uwsgi Summary: uWSGI - Apache2 proxy module Group: System Environment/Daemons @@ -1188,6 +1196,7 @@ Requires: uwsgi = %{version}-%{release}, httpd %description -n mod_proxy_uwsgi Fully Apache API compliant proxy module +%endif %prep @@ -1288,7 +1297,10 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py -- %if %{with tcp_wrappers} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/router_access fedora %endif +%if %{with mod_proxy_uwsgi} %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c +%endif + %install mkdir -p %{buildroot}%{_sysconfdir}/uwsgi.d @@ -1341,7 +1353,9 @@ install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf %else install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi %endif +%if %{with mod_proxy_uwsgi} install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so +%endif %pre @@ -1806,11 +1820,16 @@ fi # The rest +%if %{with mod_proxy_uwsgi} %files -n mod_proxy_uwsgi %{_httpd_moddir}/mod_proxy_uwsgi.so +%endif %changelog +* Wed Sep 12 2018 Carl George - 2.0.17.1-4 +- Drop mod_proxy_uwsgi subpackage on Fedora, as this module now provided by httpd rhbz#1574335 + * Sat Jul 14 2018 Tadej Janež - 2.0.17.1-3 - Re-enable greenlet plugin on EL7: - Python 3 version is always built From 0b485a922f80a100e62d988479872a161670ef8e Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 2 Nov 2018 15:41:28 -0500 Subject: [PATCH 298/427] Remove Group tags https://fedoraproject.org/wiki/Packaging:Guidelines#Tags_and_Sections --- uwsgi.spec | 100 ----------------------------------------------------- 1 file changed, 100 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 02a0b17..a7df66f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -132,7 +132,6 @@ Name: uwsgi Version: 2.0.17.1 Release: 4%{?dist} Summary: Fast, self-healing, application container server -Group: System Environment/Daemons License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz @@ -260,7 +259,6 @@ core. %package -n uwsgi-devel Summary: uWSGI - Development header files and libraries -Group: Development/Libraries Requires: uwsgi = %{version}-%{release} %description -n uwsgi-devel @@ -269,7 +267,6 @@ for uWSGI extensions %package -n python2-uwsgidecorators Summary: Python 2 decorators providing access to the uwsgi API -Group: Development/Libraries Requires: uwsgi = %{version}-%{release} Requires: uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: python-uwsgidecorators < 2.0.16-4 @@ -280,7 +277,6 @@ The uwsgidecorators Python 2 module provides higher-level access to the uWSGI AP %if %{with python3} %package -n python%{python3_pkgversion}-uwsgidecorators Summary: Python %{python3_version} decorators providing access to the uwsgi API -Group: Development/Libraries Requires: uwsgi = %{version}-%{release} Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} %if 0%{?rhel} == 7 @@ -294,7 +290,6 @@ The uwsgidecorators Python %{python3_version} module provides higher-level acces %if %{with python3_other} %package -n python%{python3_other_pkgversion}-uwsgidecorators Summary: Python %{python3_other_version} decorators providing access to the uwsgi API -Group: Development/Libraries Requires: uwsgi = %{version}-%{release} Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release} @@ -304,7 +299,6 @@ The uwsgidecorators Python %{python3_other_version} module provides higher-level %package -n uwsgi-docs Summary: uWSGI - Documentation -Group: Documentation Requires: uwsgi %description -n uwsgi-docs @@ -312,7 +306,6 @@ This package contains the documentation files for uWSGI %package -n uwsgi-plugin-common Summary: uWSGI - Common plugins for uWSGI -Group: System Environment/Daemons Requires: uwsgi = %{version}-%{release} %description -n uwsgi-plugin-common @@ -362,7 +355,6 @@ This package contains the zabbix plugin for uWSGI %package -n uwsgi-alarm-curl Summary: uWSGI - Curl alarm plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl %description -n uwsgi-alarm-curl @@ -370,7 +362,6 @@ This package contains the alarm_curl alarm plugin for uWSGI %package -n uwsgi-alarm-xmpp Summary: uWSGI - Curl alarm plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, gloox %description -n uwsgi-alarm-xmpp @@ -380,7 +371,6 @@ This package contains the alarm_xmpp alarm plugin for uWSGI %package -n uwsgi-transformation-chunked Summary: uWSGI - Chunked Transformation plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} %description -n uwsgi-transformation-chunked @@ -388,7 +378,6 @@ This package contains the transformation_chunked plugin for uWSGI %package -n uwsgi-transformation-gzip Summary: uWSGI - GZip Transformation plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} %description -n uwsgi-transformation-gzip @@ -396,7 +385,6 @@ This package contains the transformation_gzip plugin for uWSGI %package -n uwsgi-transformation-offload Summary: uWSGI - Off-Load Transformation plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} %description -n uwsgi-transformation-offload @@ -404,7 +392,6 @@ This package contains the transformation_offload plugin for uWSGI %package -n uwsgi-transformation-template Summary: uWSGI - Template Transformation plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} %description -n uwsgi-transformation-template @@ -412,7 +399,6 @@ This package contains the transformation_template plugin for uWSGI %package -n uwsgi-transformation-tofile Summary: uWSGI - ToFile Transformation plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} %description -n uwsgi-transformation-tofile @@ -420,7 +406,6 @@ This package contains the transformation_tofile plugin for uWSGI %package -n uwsgi-transformation-toupper Summary: uWSGI - ToUpper Transformation plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-transformation-toupper @@ -430,7 +415,6 @@ This package contains the transformation_toupper plugin for uWSGI %package -n uwsgi-log-encoder-msgpack Summary: uWSGI - msgpack log encoder plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-log-encoder-msgpack @@ -438,7 +422,6 @@ This package contains the msgpack log encoder plugin for uWSGI %package -n uwsgi-logger-crypto Summary: uWSGI - logcrypto logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-logger-crypto @@ -446,7 +429,6 @@ This package contains the logcrypto logger plugin for uWSGI %package -n uwsgi-logger-file Summary: uWSGI - logfile logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-loggers <= 1.9.8-1 Provides: uwsgi-loggers = %{version}-%{release} @@ -456,7 +438,6 @@ This package contains the logfile logger plugin for uWSGI %package -n uwsgi-logger-graylog2 Summary: uWSGI - Graylog2 logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, zlib %description -n uwsgi-logger-graylog2 @@ -465,7 +446,6 @@ This package contains the graylog2 logger plugin for uWSGI %if %{with mongodblibs} %package -n uwsgi-logger-mongodb Summary: uWSGI - mongodblog logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-loggers <= 1.9.8-1 Provides: uwsgi-loggers = %{version}-%{release} @@ -476,7 +456,6 @@ This package contains the mongodblog logger plugin for uWSGI %package -n uwsgi-logger-pipe Summary: uWSGI - logpipe logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-logger-pipe @@ -484,7 +463,6 @@ This package contains the logcrypto logger plugin for uWSGI %package -n uwsgi-logger-redis Summary: uWSGI - redislog logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-loggers <= 1.9.8-1 Provides: uwsgi-loggers = %{version}-%{release} @@ -494,7 +472,6 @@ This package contains the redislog logger plugin for uWSGI %package -n uwsgi-logger-rsyslog Summary: uWSGI - rsyslog logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-rsyslog <= 1.9.8-1 Provides: uwsgi-plugin-rsyslog = %{version}-%{release} @@ -504,7 +481,6 @@ This package contains the rsyslog logger plugin for uWSGI %package -n uwsgi-logger-socket Summary: uWSGI - logsocket logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-loggers <= 1.9.8-1 Provides: uwsgi-loggers = %{version}-%{release} @@ -514,7 +490,6 @@ This package contains the logsocket logger plugin for uWSGI %package -n uwsgi-logger-syslog Summary: uWSGI - syslog logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-syslog <= 1.9.8-1 Provides: uwsgi-plugin-syslog = %{version}-%{release} @@ -525,7 +500,6 @@ This package contains the syslog logger plugin for uWSGI %if %{with systemd} %package -n uwsgi-logger-systemd Summary: uWSGI - systemd journal logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-logger-systemd @@ -535,7 +509,6 @@ This package contains the systemd journal logger plugin for uWSGI %if %{with zeromq} %package -n uwsgi-logger-zeromq Summary: uWSGI - ZeroMQ logger plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq %description -n uwsgi-logger-zeromq @@ -546,7 +519,6 @@ This package contains the ZeroMQ logger plugin for uWSGI %package -n uwsgi-plugin-airbrake Summary: uWSGI - Plugin for AirBrake support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl %description -n uwsgi-plugin-airbrake @@ -554,7 +526,6 @@ This package contains the airbrake plugin for uWSGI %package -n uwsgi-plugin-cache Summary: uWSGI - Plugin for cache support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-cache @@ -562,7 +533,6 @@ This package contains the cache plugin for uWSGI %package -n uwsgi-plugin-carbon Summary: uWSGI - Plugin for Carbon/Graphite support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-carbon @@ -571,7 +541,6 @@ This package contains the Carbon plugin for uWSGI (to use in graphite) %if %{with perl} %package -n uwsgi-plugin-psgi Summary: uWSGI - Plugin for PSGI support -Group: System Environment/Daemons Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-psgi @@ -579,7 +548,6 @@ This package contains the PSGI plugin for uWSGI %package -n uwsgi-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{version}-%{release}, perl-Coro %description -n uwsgi-plugin-coroae @@ -588,7 +556,6 @@ This package contains the coroae plugin for uWSGI %package -n uwsgi-plugin-cheaper-busyness Summary: uWSGI - Plugin for Cheaper Busyness algos -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-cheaper-busyness @@ -596,7 +563,6 @@ This package contains the cheaper_busyness plugin for uWSGI %package -n uwsgi-plugin-cplusplus Summary: uWSGI - Plugin for C++ support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libstdc++ %description -n uwsgi-plugin-cplusplus @@ -604,7 +570,6 @@ This package contains the cplusplus plugin for uWSGI %package -n uwsgi-plugin-curl-cron Summary: uWSGI - Plugin for CURL Cron support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl %description -n uwsgi-plugin-curl-cron @@ -612,7 +577,6 @@ This package contains the curl_cron plugin for uWSGI %package -n uwsgi-plugin-dumbloop Summary: uWSGI - Plugin for Dumb Loop support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-dumbloop @@ -620,7 +584,6 @@ This package contains the dumbloop plugin for uWSGI %package -n uwsgi-plugin-dummy Summary: uWSGI - Plugin for Dummy support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-dummy @@ -628,7 +591,6 @@ This package contains the dummy plugin for uWSGI %package -n uwsgi-plugin-fiber Summary: uWSGI - Plugin for Ruby Fiber support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{version}-%{release} %description -n uwsgi-plugin-fiber @@ -636,7 +598,6 @@ This package contains the fiber plugin for uWSGI %package -n uwsgi-plugin-gccgo Summary: uWSGI - Plugin for GoLang support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-gccgo @@ -644,7 +605,6 @@ This package contains the gccgo plugin for uWSGI %package -n uwsgi-plugin-geoip Summary: uWSGI - Plugin for GeoIP support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, GeoIP %description -n uwsgi-plugin-geoip @@ -652,7 +612,6 @@ This package contains the geoip plugin for uWSGI %package -n uwsgi-plugin-python2-gevent Summary: uWSGI - Plugin for Python 2 GEvent support -Group: System Environment/Daemons Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 @@ -662,7 +621,6 @@ This package contains the Python 2 gevent plugin for uWSGI %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-gevent Summary: uWSGI - Plugin for Python %{python3_version} GEvent support -Group: System Environment/Daemons Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent %description -n uwsgi-plugin-python%{python3_pkgversion}-gevent @@ -672,7 +630,6 @@ This package contains the Python %{python3_version} gevent plugin for uWSGI %if %{with python3_other} %package -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support -Group: System Environment/Daemons Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent %description -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent @@ -682,7 +639,6 @@ This package contains the Python %{python3_other_version} gevent plugin for uWSG %if %{with glusterfs} %package -n uwsgi-plugin-glusterfs Summary: uWSGI - Plugin for GlusterFS support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api %description -n uwsgi-plugin-glusterfs @@ -692,7 +648,6 @@ This package contains the glusterfs plugin for uWSGI %if %{with python2_greenlet} %package -n uwsgi-plugin-python2-greenlet Summary: uWSGI - Plugin for Python 2 Greenlet support -Group: System Environment/Daemons Requires: python-greenlet, uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 @@ -703,7 +658,6 @@ This package contains the Python 2 greenlet plugin for uWSGI %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support -Group: System Environment/Daemons Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} %description -n uwsgi-plugin-python%{python3_pkgversion}-greenlet @@ -713,7 +667,6 @@ This package contains the Python %{python3_version} greenlet plugin for uWSGI %if %{with gridfs} %package -n uwsgi-plugin-gridfs Summary: uWSGI - Plugin for GridFS support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libmongodb %description -n uwsgi-plugin-gridfs @@ -723,7 +676,6 @@ This package contains the gridfs plugin for uWSGI %if %{with java} %package -n uwsgi-plugin-jvm Summary: uWSGI - Plugin for JVM support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, java-headless, jpackage-utils %description -n uwsgi-plugin-jvm @@ -731,7 +683,6 @@ This package contains the JVM plugin for uWSGI %package -n uwsgi-plugin-jwsgi Summary: uWSGI - Plugin for JWSGI support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release} %description -n uwsgi-plugin-jwsgi @@ -740,7 +691,6 @@ This package contains the jwsgi plugin for uWSGI %package -n uwsgi-plugin-ldap Summary: uWSGI - Plugin for LDAP support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, openldap %description -n uwsgi-plugin-ldap @@ -748,7 +698,6 @@ This package contains the ldap plugin for uWSGI %package -n uwsgi-plugin-lua Summary: uWSGI - Plugin for LUA support -Group: System Environment/Daemons Requires: lua, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-lua @@ -757,7 +706,6 @@ This package contains the lua plugin for uWSGI %if %{with zeromq} %package -n uwsgi-plugin-mongrel2 Summary: uWSGI - Plugin for Mongrel2 support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq %description -n uwsgi-plugin-mongrel2 @@ -767,7 +715,6 @@ This package contains the mongrel2 plugin for uWSGI %if %{with mono} %package -n uwsgi-plugin-mono Summary: uWSGI - Plugin for Mono / .NET support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, mono-web %description -n uwsgi-plugin-mono @@ -776,7 +723,6 @@ This package contains the mono plugin for uWSGI %package -n uwsgi-plugin-nagios Summary: uWSGI - Plugin for Nagios support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-nagios @@ -784,7 +730,6 @@ This package contains the nagios plugin for uWSGI %package -n uwsgi-plugin-notfound Summary: uWSGI - Plugin for notfound support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-notfound @@ -792,7 +737,6 @@ This package contains the notfound plugin for uWSGI %package -n uwsgi-plugin-pam Summary: uWSGI - Plugin for PAM support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, pam %description -n uwsgi-plugin-pam @@ -800,7 +744,6 @@ This package contains the PAM plugin for uWSGI %package -n uwsgi-plugin-php Summary: uWSGI - Plugin for PHP support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-php @@ -808,7 +751,6 @@ This package contains the PHP plugin for uWSGI %package -n uwsgi-plugin-pty Summary: uWSGI - Plugin for PTY support -Group: System Environment/Daemons Requires: python2, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-pty @@ -816,7 +758,6 @@ This package contains the pty plugin for uWSGI %package -n uwsgi-plugin-python2 Summary: uWSGI - Plugin for Python 2 support -Group: System Environment/Daemons Requires: python2, uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-python < 2.0.16-4 @@ -826,7 +767,6 @@ This package contains the Python 2 plugin for uWSGI %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion} Summary: uWSGI - Plugin for Python %{python3_version} support -Group: System Environment/Daemons Requires: python%{python3_pkgversion}, uwsgi-plugin-common = %{version}-%{release} %if 0%{?rhel} == 7 Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 @@ -839,7 +779,6 @@ This package contains the Python %{python3_version} plugin for uWSGI %if %{with python3_other} %package -n uwsgi-plugin-python%{python3_other_pkgversion} Summary: uWSGI - Plugin for Python %{python3_other_version} support -Group: System Environment/Daemons Requires: python%{python3_other_pkgversion}, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-python%{python3_other_pkgversion} @@ -848,7 +787,6 @@ This package contains the Python %{python3_other_version} plugin for uWSGI %package -n uwsgi-plugin-rack Summary: uWSGI - Ruby rack plugin -Group: System Environment/Daemons Requires: rubygem-rack, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-rack @@ -856,7 +794,6 @@ This package contains the rack plugin for uWSGI %package -n uwsgi-plugin-rbthreads Summary: uWSGI - Ruby native threads support plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, ruby %description -n uwsgi-plugin-rbthreads @@ -865,7 +802,6 @@ This package contains the rbthreads plugin for uWSGI %if %{with java} %package -n uwsgi-plugin-ring Summary: uWSGI - Clojure/Ring request handler support plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release}, clojure %description -n uwsgi-plugin-ring @@ -874,7 +810,6 @@ This package contains the ring plugin for uWSGI %package -n uwsgi-plugin-rpc Summary: uWSGI - Plugin for RPC support -Group: System Environment/Daemons Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-rpc @@ -882,7 +817,6 @@ This package contains the RPC plugin for uWSGI %package -n uwsgi-plugin-rrdtool Summary: uWSGI - Plugin for RRDTool support -Group: System Environment/Daemons Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-rrdtool @@ -890,7 +824,6 @@ This package contains the RRD Tool plugin for uWSGI %package -n uwsgi-plugin-ruby Summary: uWSGI - Plugin for Ruby support -Group: System Environment/Daemons Requires: ruby, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-ruby @@ -898,7 +831,6 @@ This package contains the ruby19 plugin for uWSGI %package -n uwsgi-plugin-spooler Summary: uWSGI - Plugin for Remote Spooling support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-spooler @@ -906,7 +838,6 @@ This package contains the spooler plugin for uWSGI %package -n uwsgi-plugin-sqlite3 Summary: uWSGI - SQLite3 plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, sqlite %description -n uwsgi-plugin-sqlite3 @@ -914,7 +845,6 @@ This package contains the sqlite3 plugin for uWSGI %package -n uwsgi-plugin-ssi Summary: uWSGI - Server Side Includes plugin -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-ssi @@ -922,7 +852,6 @@ This package contains the ssi plugin for uWSGI %package -n uwsgi-plugin-python2-tornado Summary: uWSGI - Plugin for Tornado (Python 2) support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, python-tornado Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 @@ -932,7 +861,6 @@ This package contains the tornado (Python 2) plugin for uWSGI %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-tornado Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado %if 0%{?fedora} && 0%{?fedora} < 29 Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 @@ -944,7 +872,6 @@ This package contains the tornado (Python %{python3_version}) plugin for uWSGI %package -n uwsgi-plugin-ugreen Summary: uWSGI - Plugin for uGreen support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-ugreen @@ -953,7 +880,6 @@ This package contains the uGreen plugin for uWSGI %if %{with v8} %package -n uwsgi-plugin-v8 Summary: uWSGI - Plugin for v8 support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-v8 @@ -962,7 +888,6 @@ This package contains the v8 plugin for uWSGI %package -n uwsgi-plugin-webdav Summary: uWSGI - Plugin for WebDAV support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libattr %description -n uwsgi-plugin-webdav @@ -970,7 +895,6 @@ This package contains the webdav plugin for uWSGI %package -n uwsgi-plugin-xattr Summary: uWSGI - Plugin for Extra Attributes support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libattr %description -n uwsgi-plugin-xattr @@ -978,7 +902,6 @@ This package contains the xattr plugin for uWSGI %package -n uwsgi-plugin-xslt Summary: uWSGI - Plugin for XSLT transformation support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release}, libxslt %description -n uwsgi-plugin-xslt @@ -986,7 +909,6 @@ This package contains the xslt plugin for uWSGI %package -n uwsgi-plugin-zergpool Summary: uWSGI - Plugin for zergpool support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-zergpool @@ -997,7 +919,6 @@ This package contains the zergpool plugin for uWSGI %if %{with tcp_wrappers} %package -n uwsgi-router-access Summary: uWSGI - Plugin for router_access router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1007,7 +928,6 @@ This package contains the router_access plugin for uWSGI %package -n uwsgi-router-basicauth Summary: uWSGI - Plugin for Basic Auth router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1016,7 +936,6 @@ This package contains the basicauth plugin for uWSGI %package -n uwsgi-router-cache Summary: uWSGI - Plugin for Cache router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1025,7 +944,6 @@ This package contains the cache router plugin for uWSGI %package -n uwsgi-router-expires Summary: uWSGI - Plugin for Expires router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1034,7 +952,6 @@ This package contains the expires router plugin for uWSGI %package -n uwsgi-router-fast Summary: uWSGI - Plugin for FastRouter support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-fastrouter <= 2.0.6 Provides: uwsgi-plugin-fastrouter = %{version}-%{release} @@ -1045,7 +962,6 @@ This package contains the fastrouter (proxy) plugin for uWSGI %package -n uwsgi-router-forkpty Summary: uWSGI - Plugin for ForkPTY router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-router-forkpty @@ -1053,7 +969,6 @@ This package contains the ForkPTY router plugin for uWSGI %package -n uwsgi-router-hash Summary: uWSGI - Plugin for Hash router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1062,7 +977,6 @@ This package contains the hash router plugin for uWSGI %package -n uwsgi-router-http Summary: uWSGI - Plugin for HTTP router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1071,7 +985,6 @@ This package contains the http router plugin for uWSGI %package -n uwsgi-router-memcached Summary: uWSGI - Plugin for Memcached router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1080,7 +993,6 @@ This package contains the memcached router plugin for uWSGI %package -n uwsgi-router-metrics Summary: uWSGI - Plugin for Metrics router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-router-metrics @@ -1088,7 +1000,6 @@ This package contains the metrics router plugin for uWSGI %package -n uwsgi-router-radius Summary: uWSGI - Plugin for Radius router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-router-radius @@ -1096,7 +1007,6 @@ This package contains the metrics router plugin for uWSGI %package -n uwsgi-router-raw Summary: uWSGI - Plugin for Raw Router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-rawrouter <= 2.0.6 Provides: uwsgi-plugin-rawrouter = %{version}-%{release} @@ -1107,7 +1017,6 @@ This package contains the Raw router plugin for uWSGI %package -n uwsgi-router-redirect Summary: uWSGI - Plugin for Redirect router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1116,7 +1025,6 @@ This package contains the redirect router plugin for uWSGI %package -n uwsgi-router-redis Summary: uWSGI - Plugin for Redis router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1125,7 +1033,6 @@ This package contains the redis router plugin for uWSGI %package -n uwsgi-router-rewrite Summary: uWSGI - Plugin for Rewrite router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1134,7 +1041,6 @@ This package contains the rewrite router plugin for uWSGI %package -n uwsgi-router-spnego Summary: uWSGI - Plugin for SPNEgo router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-router-spnego @@ -1142,7 +1048,6 @@ This package contains the spnego router plugin for uWSGI %package -n uwsgi-router-ssl Summary: uWSGI - Plugin for SSL router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-sslrouter <= 2.0.6 Provides: uwsgi-plugin-sslrouter = %{version}-%{release} @@ -1153,7 +1058,6 @@ This package contains the SSL router plugin for uWSGI %package -n uwsgi-router-static Summary: uWSGI - Plugin for Static router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1162,7 +1066,6 @@ This package contains the Static router plugin for uWSGI %package -n uwsgi-router-tuntap Summary: uWSGI - Plugin for TUN/TAP router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-router-tuntap @@ -1170,7 +1073,6 @@ This package contains the tuntap router plugin for uWSGI %package -n uwsgi-router-uwsgi Summary: uWSGI - Plugin for uWSGI router support -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1179,7 +1081,6 @@ This package contains the uwsgi router plugin for uWSGI %package -n uwsgi-router-xmldir Summary: uWSGI - Plugin for XMLDir router rupport -Group: System Environment/Daemons Requires: uwsgi-plugin-common = %{version}-%{release} Provides: uwsgi-routers = %{version}-%{release} @@ -1191,7 +1092,6 @@ This package contains the xmldir router plugin for uWSGI %if %{with mod_proxy_uwsgi} %package -n mod_proxy_uwsgi Summary: uWSGI - Apache2 proxy module -Group: System Environment/Daemons Requires: uwsgi = %{version}-%{release}, httpd %description -n mod_proxy_uwsgi From 0e782a470a5f06cef369a79e379596d927835525 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 3 Nov 2018 15:31:06 -0500 Subject: [PATCH 299/427] Don't build python2-uwsgidecorators on F30+ --- uwsgi.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a7df66f..31136f5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -130,7 +130,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -265,6 +265,7 @@ Requires: uwsgi = %{version}-%{release} This package contains the development header files and libraries for uWSGI extensions +%if 0%{?fedora} < 30 %package -n python2-uwsgidecorators Summary: Python 2 decorators providing access to the uwsgi API Requires: uwsgi = %{version}-%{release} @@ -273,6 +274,7 @@ Obsoletes: python-uwsgidecorators < 2.0.16-4 %description -n python2-uwsgidecorators The uwsgidecorators Python 2 module provides higher-level access to the uWSGI API. +%endif %if %{with python3} %package -n python%{python3_pkgversion}-uwsgidecorators @@ -1224,7 +1226,9 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora install -D -p -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi +%if 0%{?fedora} < 30 install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python2_sitelib}/uwsgidecorators.py +%endif %if %{manual_py_compile} == 1 %py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/uwsgidecorators.py %endif @@ -1341,8 +1345,10 @@ fi %{_includedir}/uwsgi %{_usrsrc}/uwsgi +%if 0%{?fedora} < 30 %files -n python2-uwsgidecorators %{python2_sitelib}/uwsgidecorators.py* +%endif %if %{with python3} %files -n python%{python3_pkgversion}-uwsgidecorators @@ -1727,6 +1733,9 @@ fi %changelog +* Fri Nov 02 2018 Carl George - 2.0.17.1-5 +- Don't build python2-uwsgidecorators on F30+ + * Wed Sep 12 2018 Carl George - 2.0.17.1-4 - Drop mod_proxy_uwsgi subpackage on Fedora, as this module now provided by httpd rhbz#1574335 From 52a8ead85cd0a8cf174902ed322d0d3580632803 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 3 Nov 2018 15:37:15 -0500 Subject: [PATCH 300/427] BuildRequire mongo-cxx-driver-legacy-devel on F30+ --- uwsgi.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 31136f5..7f8ac10 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -216,8 +216,12 @@ BuildRequires: v8-devel %endif %endif %if %{with mongodblibs} +%if 0%{?fedora} >= 30 +BuildRequires: mongo-cxx-driver-legacy-devel +%else BuildRequires: libmongodb-devel %endif +%endif %if 0%{?fedora} >= 28 BuildRequires: libargon2-devel @@ -1735,6 +1739,7 @@ fi %changelog * Fri Nov 02 2018 Carl George - 2.0.17.1-5 - Don't build python2-uwsgidecorators on F30+ +- BuildRequire mongo-cxx-driver-legacy-devel on F30+ * Wed Sep 12 2018 Carl George - 2.0.17.1-4 - Drop mod_proxy_uwsgi subpackage on Fedora, as this module now provided by httpd rhbz#1574335 From e452c9f9ac42730033adf72afcae9a52b91608dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Mon, 14 Jan 2019 19:18:36 +0100 Subject: [PATCH 301/427] Rebuilt for libcrypt.so.2 (#1666033) --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 7f8ac10..908ba7e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -130,7 +130,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -1737,6 +1737,9 @@ fi %changelog +* Mon Jan 14 2019 Björn Esser - 2.0.17.1-6 +- Rebuilt for libcrypt.so.2 (#1666033) + * Fri Nov 02 2018 Carl George - 2.0.17.1-5 - Don't build python2-uwsgidecorators on F30+ - BuildRequire mongo-cxx-driver-legacy-devel on F30+ From cbb7a3c206510180adfcb1396afe1577dda4e404 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Mon, 21 Jan 2019 16:31:30 +0900 Subject: [PATCH 302/427] F-30: rebuild against ruby26 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 908ba7e..12eb75e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -130,7 +130,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -1737,6 +1737,9 @@ fi %changelog +* Mon Jan 21 2019 Mamoru TASAKA - 2.0.17.1-7 +- F-30: rebuild against ruby26 + * Mon Jan 14 2019 Björn Esser - 2.0.17.1-6 - Rebuilt for libcrypt.so.2 (#1666033) From 6e586d981349225a1ef83a4f59df72858f495bd5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 3 Feb 2019 11:00:55 +0000 Subject: [PATCH 303/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 12eb75e..c53f702 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -130,7 +130,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -1737,6 +1737,9 @@ fi %changelog +* Sun Feb 03 2019 Fedora Release Engineering - 2.0.17.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Mon Jan 21 2019 Mamoru TASAKA - 2.0.17.1-7 - F-30: rebuild against ruby26 From c8ece00ee6ef5bde67a5c5a8ae640e64f9d33082 Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Thu, 7 Mar 2019 17:30:45 -0800 Subject: [PATCH 304/427] Rebuilt to change main python from 3.4 to 3.6 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 596e139..30a22a4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -119,7 +119,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server Group: System Environment/Daemons License: GPLv2 with exceptions @@ -1809,6 +1809,9 @@ fi %changelog +* Fri Mar 08 2019 Troy Dawson - 2.0.17.1-2 +- Rebuilt to change main python from 3.4 to 3.6 + * Mon Jul 09 2018 Carl George - 2.0.17.1-1 - Latest upstream (rhbz#1549354) - Enable uwsgi-plugin-coroae on EL7 From ecb34158716e9ff9d77e4d67436ff6c42e580ce0 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Mon, 18 Mar 2019 13:25:51 +0100 Subject: [PATCH 305/427] rebuild for libargon2 new soname --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index c53f702..c59aa89 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -130,7 +130,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -1737,6 +1737,9 @@ fi %changelog +* Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 +- rebuild for libargon2 new soname + * Sun Feb 03 2019 Fedora Release Engineering - 2.0.17.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From 0329e9ef2cd74ee3200366d031e11878af47e091 Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 26 Mar 2019 12:48:03 -0500 Subject: [PATCH 306/427] Remove java-1.8.0-openjdk-aarch32 hack This is no longer necessary because java-1.8.0-openjdk-aarch32 no longer provides java-devel. https://src.fedoraproject.org/rpms/java-1.8.0-openjdk-aarch32/c/8e3a1b61c91f8f2526330948cb04c251b06aa788 --- uwsgi.spec | 7 ------- 1 file changed, 7 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index c59aa89..26e9cb6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -180,13 +180,6 @@ BuildRequires: compat-openssl10-devel BuildRequires: openssl-devel %endif BuildRequires: bzip2-devel, gmp-devel, pam-devel -%ifarch %arm -# FIXME: explicitly specify java package not to use -# java-1.8.0-openjdk-aarch32, which provides client/libjvm.so -# but not server/libjvm.so, which uwsgi requires -BuildRequires: java-1.8.0-openjdk-headless -BuildRequires: java-1.8.0-openjdk-devel -%endif BuildRequires: java-devel, sqlite-devel, libcap-devel BuildRequires: httpd-devel, libcurl-devel BuildRequires: gloox-devel, libstdc++-devel From 5b32fcf186ec0d00fc67bafd0d2e418972f90e38 Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 26 Mar 2019 12:59:32 -0500 Subject: [PATCH 307/427] Disable jvm plugin on Fedora and EL6 javapackages-tools will soon be retired due to apache-ivy being orphaned. --- uwsgi.spec | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 26e9cb6..53b2b6a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -19,7 +19,8 @@ %bcond_without python2_greenlet %bcond_without perl %bcond_without glusterfs -%bcond_without java +# javapackages-tools retired (apache-ivy orphanage) +%bcond_with java # Fedora httpd includes mod_proxy_uwsgi # https://bugzilla.redhat.com/show_bug.cgi?id=1574335 %bcond_with mod_proxy_uwsgi @@ -53,12 +54,8 @@ # Conditionally disable some things in epel6 %if 0%{?rhel} == 6 -# el6 ppc64 doesn't hava java -%ifarch ppc64 +# javapackages-tools retired in epel (apache-ivy orphanage) %bcond_with java -%else -%bcond_without java -%endif # el6 doesn't ship with systemd %bcond_with systemd # el6 doesn't have go @@ -130,7 +127,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -180,7 +177,7 @@ BuildRequires: compat-openssl10-devel BuildRequires: openssl-devel %endif BuildRequires: bzip2-devel, gmp-devel, pam-devel -BuildRequires: java-devel, sqlite-devel, libcap-devel +BuildRequires: sqlite-devel, libcap-devel BuildRequires: httpd-devel, libcurl-devel BuildRequires: gloox-devel, libstdc++-devel BuildRequires: GeoIP-devel, libevent-devel, zlib-devel @@ -675,6 +672,7 @@ This package contains the gridfs plugin for uWSGI %if %{with java} %package -n uwsgi-plugin-jvm Summary: uWSGI - Plugin for JVM support +BuildRequires: java-devel Requires: uwsgi-plugin-common = %{version}-%{release}, java-headless, jpackage-utils %description -n uwsgi-plugin-jvm @@ -1730,6 +1728,9 @@ fi %changelog +* Tue Mar 26 2019 Carl George - 2.0.17.1-10 +- Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) + * Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 - rebuild for libargon2 new soname From 565208c465e8a40de3bcdab10c7a8987ab1f813a Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 26 Mar 2019 15:13:09 -0500 Subject: [PATCH 308/427] Disable v8 plugin on Fedora v8-314 was retired. --- uwsgi.spec | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 53b2b6a..cbb746e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -37,12 +37,8 @@ %else %bcond_with mongodblibs %endif -# v8 -%ifnarch %{ix86} x86_64 %{arm} +# v8-314 retired %bcond_with v8 -%else -%bcond_without v8 -%endif #mongodblibs dependency %if %{without mongodblibs} %bcond_with gridfs @@ -1730,6 +1726,7 @@ fi %changelog * Tue Mar 26 2019 Carl George - 2.0.17.1-10 - Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) +- Disable v8 plugin on Fedora due to v8-314 retirement * Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 - rebuild for libargon2 new soname From bbc4d7fe28e10626e4fe0933369b5277656ad375 Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 26 Mar 2019 15:15:59 -0500 Subject: [PATCH 309/427] Disable mongo plugins on Fedora mongo-cxx-driver-legacy is broken in rawhide. https://bugzilla.redhat.com/show_bug.cgi?id=1675407 --- uwsgi.spec | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index cbb746e..2212e97 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -31,12 +31,8 @@ %bcond_without mono %endif # mongodblibs -# mongodb is little endian only -%ifnarch ppc ppc64 s390 s390x -%bcond_without mongodblibs -%else +# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 %bcond_with mongodblibs -%endif # v8-314 retired %bcond_with v8 #mongodblibs dependency @@ -205,7 +201,7 @@ BuildRequires: v8-devel %if 0%{?fedora} >= 30 BuildRequires: mongo-cxx-driver-legacy-devel %else -BuildRequires: libmongodb-devel +BuildRequires: mongo-cxx-driver-devel %endif %endif @@ -1727,6 +1723,7 @@ fi * Tue Mar 26 2019 Carl George - 2.0.17.1-10 - Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) - Disable v8 plugin on Fedora due to v8-314 retirement +- Disable mongo plugins on Fedora due to mongo-cxx-driver-legacy being broken in rawhide * Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 - rebuild for libargon2 new soname From e751a2372bacf9d3dbe6bba453bb394ba6cb1a03 Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 26 Mar 2019 15:54:41 -0500 Subject: [PATCH 310/427] Disable mono plugins on ppc64le because mono-4.8.0-17 dropped that arch rhbz#1686983 --- uwsgi.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2212e97..dcd030c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -25,10 +25,11 @@ # https://bugzilla.redhat.com/show_bug.cgi?id=1574335 %bcond_with mod_proxy_uwsgi #mono -%ifnarch %{mono_arches} -%bcond_with mono -%else +# normally we could use %%{mono_arches} but it's busted rhbz#1686983 +%ifarch %{ix86} x86_64 %{arm} aarch64 s390x %bcond_without mono +%else +%bcond_with mono %endif # mongodblibs # mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 @@ -1724,6 +1725,7 @@ fi - Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) - Disable v8 plugin on Fedora due to v8-314 retirement - Disable mongo plugins on Fedora due to mongo-cxx-driver-legacy being broken in rawhide +- Disable mono plugins on ppc64le because mono-4.8.0-17 dropped that arch rhbz#1686983 * Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 - rebuild for libargon2 new soname From 34254698e131891caca79fd52b2e112d9125c880 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 3 Apr 2019 07:36:59 -0500 Subject: [PATCH 311/427] Re-enable mono plugins on ppc64le --- uwsgi.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index dcd030c..9501746 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -25,8 +25,7 @@ # https://bugzilla.redhat.com/show_bug.cgi?id=1574335 %bcond_with mod_proxy_uwsgi #mono -# normally we could use %%{mono_arches} but it's busted rhbz#1686983 -%ifarch %{ix86} x86_64 %{arm} aarch64 s390x +%ifarch %{mono_arches} %bcond_without mono %else %bcond_with mono @@ -120,7 +119,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -1721,6 +1720,9 @@ fi %changelog +* Wed Apr 03 2019 Carl George - 2.0.17.1-11 +- Re-enable mono plugins on ppc64le + * Tue Mar 26 2019 Carl George - 2.0.17.1-10 - Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) - Disable v8 plugin on Fedora due to v8-314 retirement From e6997a8f6992636fa755d51f98669ddb1d0d519d Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 31 May 2019 19:43:03 +0200 Subject: [PATCH 312/427] Perl 5.30 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9501746..76d6e9e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -119,7 +119,7 @@ Name: uwsgi Version: 2.0.17.1 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Fast, self-healing, application container server License: GPLv2 with exceptions URL: https://github.com/unbit/uwsgi @@ -1720,6 +1720,9 @@ fi %changelog +* Fri May 31 2019 Jitka Plesnikova - 2.0.17.1-12 +- Perl 5.30 rebuild + * Wed Apr 03 2019 Carl George - 2.0.17.1-11 - Re-enable mono plugins on ppc64le From 8990d6f68d301f5d17e690f7ba5d406a62936437 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 19 Jun 2019 13:30:37 -0500 Subject: [PATCH 313/427] Latest upstream 2.0.18 --- .gitignore | 2 ++ sources | 2 ++ uwsgi.spec | 16 ++++++++++++---- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 9cac662..b12f528 100644 --- a/.gitignore +++ b/.gitignore @@ -43,3 +43,5 @@ /uwsgi-docs-eb4ad98.tar.gz /uwsgi-2.0.17.1.tar.gz /uwsgi-docs-32a8f73.tar.gz +/uwsgi-2.0.18.tar.gz +/uwsgi-docs-8d868ea.tar.gz diff --git a/sources b/sources index e574c01..60c4030 100644 --- a/sources +++ b/sources @@ -1,2 +1,4 @@ SHA512 (uwsgi-2.0.17.1.tar.gz) = 10d357961fde3a3f5f8e77986cc647313f95a33243e24c2afc482fce21df68a8ae48f90e7b5b76d7edc3cf8fd474d99823d6d60ef7477349abc65a319222f11b SHA512 (uwsgi-docs-32a8f73.tar.gz) = 687240d9c33cb44061b3e43746354a14cfa49162ee25100c97866c0405878b9bc62164b6dbe2acae451edb674d9fd900933062ebd5755b728eeec3f7fe7eda36 +SHA512 (uwsgi-2.0.18.tar.gz) = 6561703279bcc4a81311d033810ac066d0f113bab13b0942f3eef86cac29c584a6641b52476840d6895151aee5ed064ae2d03b18932cf7f47e62f4eeed76da61 +SHA512 (uwsgi-docs-8d868ea.tar.gz) = 1ebf9bbe42d7a67553ff1081a2322fc00c72b72fa52879bba3b7ce8d9f4934b5643d96444ce75559b9f7303be4cdc0453ae2b4d73f1fa13cfc32f69d522bc2f0 diff --git a/uwsgi.spec b/uwsgi.spec index 76d6e9e..791959a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 32a8f7304d0e705d36dd9644707552939c67f547 +%global commit 8d868eadfb460785a735030271afa233ac854763 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -118,11 +118,14 @@ %endif Name: uwsgi -Version: 2.0.17.1 -Release: 12%{?dist} +Version: 2.0.18 +Release: 1%{?dist} Summary: Fast, self-healing, application container server -License: GPLv2 with exceptions +# uwsgi is licensed under GPLv2 with a linking exception +# docs are licensed under MIT +License: GPLv2 with exceptions and MIT URL: https://github.com/unbit/uwsgi + Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service @@ -131,6 +134,7 @@ Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo} Source5: README.Fedora Source6: uwsgi.init Source7: uwsgi.tmpfiles + Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch @@ -141,6 +145,7 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/pull/1772 Patch9: uwsgi-2.0.16-glfs.patch + BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel %if %{with tcp_wrappers} @@ -1720,6 +1725,9 @@ fi %changelog +* Wed Jun 19 2019 Carl George - 2.0.18-1 +- Latest upstream + * Fri May 31 2019 Jitka Plesnikova - 2.0.17.1-12 - Perl 5.30 rebuild From 90f06bad6c125990ed542c04e81c2a52f24556f5 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 19 Jun 2019 13:43:33 -0500 Subject: [PATCH 314/427] Use openssl everywhere, instead of compat-openssl10 on F26+ --- uwsgi.spec | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 791959a..08914ac 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -168,11 +168,7 @@ BuildRequires: glusterfs-devel, glusterfs-api-devel %endif BuildRequires: lua-devel, ruby, pcre-devel BuildRequires: php-devel, php-embedded, libedit-devel, krb5-devel -%if 0%{?fedora} >= 26 -BuildRequires: compat-openssl10-devel -%else BuildRequires: openssl-devel -%endif BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: sqlite-devel, libcap-devel BuildRequires: httpd-devel, libcurl-devel @@ -1727,6 +1723,7 @@ fi %changelog * Wed Jun 19 2019 Carl George - 2.0.18-1 - Latest upstream +- Use openssl everywhere, instead of compat-openssl10 on F26+ * Fri May 31 2019 Jitka Plesnikova - 2.0.17.1-12 - Perl 5.30 rebuild From ba0b9b866a3ebb79e59c67efaa859219fa68b714 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 19 Jun 2019 15:50:38 -0500 Subject: [PATCH 315/427] Disable python2 subpackages on F31+ --- fedora.ini | 3 --- uwsgi.spec | 60 +++++++++++++++++++++++++++++++++++------------------- 2 files changed, 39 insertions(+), 24 deletions(-) diff --git a/fedora.ini b/fedora.ini index 67ca940..35298b8 100644 --- a/fedora.ini +++ b/fedora.ini @@ -23,7 +23,6 @@ plugins = airbrake, fastrouter, forkptyrouter, geoip, - gevent, graylog2, http, ldap, @@ -38,7 +37,6 @@ plugins = airbrake, pam, php, pty, - python, rack, rawrouter, redislog, @@ -69,7 +67,6 @@ plugins = airbrake, stats_pusher_socket, stats_pusher_statsd, syslog, - tornado, transformation_chunked, transformation_gzip, transformation_offload, diff --git a/uwsgi.spec b/uwsgi.spec index 08914ac..ffc630c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,13 +10,14 @@ %if 0%{?fedora} %bcond_without systemd %bcond_without go +%if 0%{?fedora} < 31 +%bcond_without python2 +%bcond_without python2_greenlet +%endif %bcond_without python3 -# Fedora doesn't have two versions of python3 -%bcond_with python3_other %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq -%bcond_without python2_greenlet %bcond_without perl %bcond_without glusterfs # javapackages-tools retired (apache-ivy orphanage) @@ -52,9 +53,8 @@ %bcond_with systemd # el6 doesn't have go %bcond_with go -# el6 doesn't have python3 -%bcond_with python3 -%bcond_with python3_other +%bcond_without python2 +%bcond_without python2_greenlet # el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 %bcond_with ruby19 # el6 doesn't have perl-PSGI @@ -77,17 +77,14 @@ %bcond_without java # el7 does have systemd %bcond_without systemd -# el7 does have python3 +%bcond_without python2 %bcond_without python3 -# el7 has another version of python3 %bcond_without python3_other # el7 doesn't have zeromq %bcond_with zeromq # el7 does have python-greenlet, but only on x86_64 %ifarch x86_64 %bcond_without python2_greenlet -%else -%bcond_with python2_greenlet %endif # el7 does have perl-PSGI # el7 does have perl-Coro @@ -146,23 +143,24 @@ Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/pull/1772 Patch9: uwsgi-2.0.16-glfs.patch -BuildRequires: curl, python2-devel, libxml2-devel, libuuid-devel, jansson-devel +BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel %if %{with tcp_wrappers} BuildRequires: tcp_wrappers-devel %endif -%if %{with python3} -BuildRequires: python%{python3_pkgversion}-devel -%endif -%if %{with python3_other} -BuildRequires: python%{python3_other_pkgversion}-devel -%endif +%if %{with python2} +BuildRequires: python2-devel %if %{with python2_greenlet} BuildRequires: python-greenlet-devel %endif +%endif %if %{with python3} +BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-greenlet-devel %endif +%if %{with python3_other} +BuildRequires: python%{python3_other_pkgversion}-devel +%endif %if %{with glusterfs} BuildRequires: glusterfs-devel, glusterfs-api-devel %endif @@ -252,7 +250,7 @@ Requires: uwsgi = %{version}-%{release} This package contains the development header files and libraries for uWSGI extensions -%if 0%{?fedora} < 30 +%if %{with python2} %package -n python2-uwsgidecorators Summary: Python 2 decorators providing access to the uwsgi API Requires: uwsgi = %{version}-%{release} @@ -599,6 +597,7 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, GeoIP %description -n uwsgi-plugin-geoip This package contains the geoip plugin for uWSGI +%if %{with python2} %package -n uwsgi-plugin-python2-gevent Summary: uWSGI - Plugin for Python 2 GEvent support Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent @@ -606,6 +605,7 @@ Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 %description -n uwsgi-plugin-python2-gevent This package contains the Python 2 gevent plugin for uWSGI +%endif %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-gevent @@ -634,6 +634,7 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api This package contains the glusterfs plugin for uWSGI %endif +%if %{with python2} %if %{with python2_greenlet} %package -n uwsgi-plugin-python2-greenlet Summary: uWSGI - Plugin for Python 2 Greenlet support @@ -643,6 +644,7 @@ Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 %description -n uwsgi-plugin-python2-greenlet This package contains the Python 2 greenlet plugin for uWSGI %endif +%endif %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet @@ -746,6 +748,7 @@ Requires: python2, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-pty This package contains the pty plugin for uWSGI +%if %{with python2} %package -n uwsgi-plugin-python2 Summary: uWSGI - Plugin for Python 2 support Requires: python2, uwsgi-plugin-common = %{version}-%{release} @@ -753,6 +756,7 @@ Obsoletes: uwsgi-plugin-python < 2.0.16-4 %description -n uwsgi-plugin-python2 This package contains the Python 2 plugin for uWSGI +%endif %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion} @@ -840,6 +844,7 @@ Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-ssi This package contains the ssi plugin for uWSGI +%if %{with python2} %package -n uwsgi-plugin-python2-tornado Summary: uWSGI - Plugin for Tornado (Python 2) support Requires: uwsgi-plugin-common = %{version}-%{release}, python-tornado @@ -847,6 +852,7 @@ Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 %description -n uwsgi-plugin-python2-tornado This package contains the tornado (Python 2) plugin for uWSGI +%endif %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-tornado @@ -1127,6 +1133,11 @@ sed -in "s/mono, //" buildconf/fedora.ini %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --build fedora.ini +%if %{with python2} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/python fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gevent fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/tornado fedora +%endif %if %{with python3} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent @@ -1214,12 +1225,12 @@ echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora install -D -p -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi -%if 0%{?fedora} < 30 +%if %{with python2} install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python2_sitelib}/uwsgidecorators.py -%endif %if %{manual_py_compile} == 1 %py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/uwsgidecorators.py %endif +%endif %if %{with python3} install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 @@ -1333,7 +1344,7 @@ fi %{_includedir}/uwsgi %{_usrsrc}/uwsgi -%if 0%{?fedora} < 30 +%if %{with python2} %files -n python2-uwsgidecorators %{python2_sitelib}/uwsgidecorators.py* %endif @@ -1496,8 +1507,10 @@ fi %files -n uwsgi-plugin-geoip %{_libdir}/uwsgi/geoip_plugin.so +%if %{with python2} %files -n uwsgi-plugin-python2-gevent %{_libdir}/uwsgi/gevent_plugin.so +%endif %if %{with python3} %files -n uwsgi-plugin-python%{python3_pkgversion}-gevent @@ -1571,8 +1584,10 @@ fi %files -n uwsgi-plugin-pty %{_libdir}/uwsgi/pty_plugin.so +%if %{with python2} %files -n uwsgi-plugin-python2 %{_libdir}/uwsgi/python_plugin.so +%endif %if %{with python3} %files -n uwsgi-plugin-python%{python3_pkgversion} @@ -1615,8 +1630,10 @@ fi %files -n uwsgi-plugin-ssi %{_libdir}/uwsgi/ssi_plugin.so +%if %{with python2} %files -n uwsgi-plugin-python2-tornado %{_libdir}/uwsgi/tornado_plugin.so +%endif %if %{with python3} %files -n uwsgi-plugin-python%{python3_pkgversion}-tornado @@ -1724,6 +1741,7 @@ fi * Wed Jun 19 2019 Carl George - 2.0.18-1 - Latest upstream - Use openssl everywhere, instead of compat-openssl10 on F26+ +- Disable python2 subpackages on F31+ * Fri May 31 2019 Jitka Plesnikova - 2.0.17.1-12 - Perl 5.30 rebuild From 3d1cc42f400f3fc190f2c412b542fd993f3bfad0 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 19 Jun 2019 15:51:02 -0500 Subject: [PATCH 316/427] Add missing conditional for gccgo subpackage --- uwsgi.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index ffc630c..2e01c21 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -583,12 +583,14 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{ver %description -n uwsgi-plugin-fiber This package contains the fiber plugin for uWSGI +%if %{with go} %package -n uwsgi-plugin-gccgo Summary: uWSGI - Plugin for GoLang support Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-gccgo This package contains the gccgo plugin for uWSGI +%endif %package -n uwsgi-plugin-geoip Summary: uWSGI - Plugin for GeoIP support From 283c15c199f9a76d97bb1c7212017d65672eb839 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 22 Jul 2019 14:58:23 +0200 Subject: [PATCH 317/427] Don't require python2 from uwsgi-plugin-pty --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2e01c21..77b29f5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -745,7 +745,7 @@ This package contains the PHP plugin for uWSGI %package -n uwsgi-plugin-pty Summary: uWSGI - Plugin for PTY support -Requires: python2, uwsgi-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-pty This package contains the pty plugin for uWSGI From 62174e1a16c2ab4248207a4f825ec5355ba7e369 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jul 2019 02:43:16 +0000 Subject: [PATCH 318/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 77b29f5..a384f7c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -116,7 +116,7 @@ Name: uwsgi Version: 2.0.18 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1740,6 +1740,9 @@ fi %changelog +* Sat Jul 27 2019 Fedora Release Engineering - 2.0.18-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Wed Jun 19 2019 Carl George - 2.0.18-1 - Latest upstream - Use openssl everywhere, instead of compat-openssl10 on F26+ From fd803aa02b758a81aeeab91ae7cd37e452259de6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 19 Aug 2019 11:08:56 +0200 Subject: [PATCH 319/427] Rebuilt for Python 3.8 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a384f7c..670fed1 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -116,7 +116,7 @@ Name: uwsgi Version: 2.0.18 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1740,6 +1740,9 @@ fi %changelog +* Mon Aug 19 2019 Miro Hrončok - 2.0.18-3 +- Rebuilt for Python 3.8 + * Sat Jul 27 2019 Fedora Release Engineering - 2.0.18-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From c358b506e78c059c2f543a2c1dfebbb2282d5962 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 3 Sep 2019 18:36:20 +0200 Subject: [PATCH 320/427] Make the package buildable --without python2 --- uwsgi.spec | 61 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 21 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 670fed1..ea52f46 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -114,6 +114,21 @@ %bcond_without tcp_wrappers %endif +# Set %%__python to the newest possible version +%if %{with python3} +%global __python %{__python3} +%else +%if %{with python3_other} +%global __python %{__python3_other} +%else +%if %{with python2} +%global __python %{__python2} +%else +%global __python /usr/bin/true +%endif +%endif +%endif + Name: uwsgi Version: 2.0.18 Release: 3%{?dist} @@ -1132,9 +1147,13 @@ sed -in "s/gridfs, //" buildconf/fedora.ini sed -in "s/mono, //" buildconf/fedora.ini %endif +%if %{with perl} && (%{with python3} || %{with python3_other}) +%{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py +%endif + %build -CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --build fedora.ini +CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --build fedora.ini %if %{with python2} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/python fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gevent fedora @@ -1150,55 +1169,55 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent %endif %if %{with mongodblibs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mongodblog fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongodblog fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mono fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mono fedora %endif %if %{with v8} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/v8 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/v8 fedora %endif %if %{with go} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gccgo fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gccgo fedora %endif %if %{with ruby19} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/fiber fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/rbthreads fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/fiber fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/rbthreads fedora %endif %if %{with systemd} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/systemd_logger fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/systemd_logger fedora %endif %if %{with tuntap} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/tuntap fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/tuntap fedora %endif %if %{with perl} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/psgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/coroae fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/psgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/coroae fedora %endif %if %{with zeromq} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/logzmq fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/mongrel2 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/logzmq fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongrel2 fedora %endif %if %{with python2_greenlet} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/greenlet fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora %endif %if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet %endif %if %{with glusterfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/glusterfs fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/glusterfs fedora %endif %if %{with gridfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gridfs fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gridfs fedora %endif %if %{with java} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/jvm fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/jwsgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/ring fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jvm fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jwsgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/ring fedora %endif %if %{with tcp_wrappers} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/router_access fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/router_access fedora %endif %if %{with mod_proxy_uwsgi} %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c From fdb577b87620f9f3b4279b5467cfef4e8c8758ea Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sat, 18 Jan 2020 11:31:37 +0900 Subject: [PATCH 321/427] F-32: rebuild against ruby27 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ea52f46..c020111 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1759,6 +1759,9 @@ fi %changelog +* Sat Jan 18 2020 Mamoru TASAKA - 2.0.18-4 +- F-32: rebuild against ruby27 + * Mon Aug 19 2019 Miro Hrončok - 2.0.18-3 - Rebuilt for Python 3.8 From dddb412ec0c535da1e55783d3df2e5d623f01a9a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 31 Jan 2020 02:51:41 +0000 Subject: [PATCH 322/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index c020111..2e4e33d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1759,6 +1759,9 @@ fi %changelog +* Fri Jan 31 2020 Fedora Release Engineering - 2.0.18-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sat Jan 18 2020 Mamoru TASAKA - 2.0.18-4 - F-32: rebuild against ruby27 From 3f8c8eaa425ea7c28a27187d1de89df5f424db2a Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 11:48:49 -0500 Subject: [PATCH 323/427] Move path options outside main config BZ 1687403 If we put the paths in the service/init files they can reference /run or /var/run respectively --- emperor.ini | 2 -- uwsgi.init | 2 +- uwsgi.service | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/emperor.ini b/emperor.ini index 6b974b9..d348937 100644 --- a/emperor.ini +++ b/emperor.ini @@ -1,9 +1,7 @@ [uwsgi] uid = uwsgi gid = uwsgi -pidfile = /run/uwsgi/uwsgi.pid emperor = /etc/uwsgi.d -stats = /run/uwsgi/stats.sock chmod-socket = 660 emperor-tyrant = true cap = setgid,setuid diff --git a/uwsgi.init b/uwsgi.init index 42402e6..dc9c445 100644 --- a/uwsgi.init +++ b/uwsgi.init @@ -16,7 +16,7 @@ PROG=/usr/sbin/uwsgi OWNER=uwsgi NAME=uwsgi DESC="Fast, self-healing, application container server" -DAEMON_OPTS="--ini /etc/uwsgi.ini --daemonize /var/log/uwsgi.log" +DAEMON_OPTS="--ini /etc/uwsgi.ini --pidfile /var/run/uwsgi/uwsgi.pid --stats /var/run/uwsgi/stats.sock --daemonize /var/log/uwsgi.log" [ -f /etc/sysconfig/uwsgi ] && . /etc/sysconfig/uwsgi diff --git a/uwsgi.service b/uwsgi.service index 20954e3..73db94c 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -4,7 +4,7 @@ After=syslog.target [Service] EnvironmentFile=-/etc/sysconfig/uwsgi -ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini +ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini --pidfile /run/uwsgi/uwsgi.pid --stats /run/uwsgi/stats.sock ExecReload=/bin/kill -HUP $MAINPID KillSignal=SIGINT Restart=always From 8e873057a198b161c2beba2e7ecc3986e8a309b6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 11:50:53 -0500 Subject: [PATCH 324/427] we'll never need to commit log files --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index b12f528..943f260 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ *.src.rpm *.swp *~ +*.log /results_uwsgi /uwsgi-1.0.4.tar.gz /uwsgi-1.2.3.tar.gz From 41f728617a02b95e4dc71312fa8b77996b607de3 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 12:01:33 -0500 Subject: [PATCH 325/427] Add a fix for psgi + GCC10 BZ 1794335 Also removing the tmpfiles stuff. Adding the directory as part of the rpm contents seems a less confusing approach, sorry Carl. --- uwsgi.spec | 14 +++++++++----- uwsgi_fix_psgi.patch | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 5 deletions(-) create mode 100644 uwsgi_fix_psgi.patch diff --git a/uwsgi.spec b/uwsgi.spec index 2e4e33d..c523a3b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -145,7 +145,6 @@ Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Source5: README.Fedora Source6: uwsgi.init -Source7: uwsgi.tmpfiles Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch @@ -157,6 +156,8 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/pull/1772 Patch9: uwsgi-2.0.16-glfs.patch +# https://github.com/unbit/uwsgi/pull/2141 +Patch10: uwsgi_fix_psgi.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1130,7 +1131,10 @@ cp -p %{SOURCE5} README.Fedora %if %{with mono} %patch7 -p1 %endif -%patch9 -p1 -b .glfs +%patch9 -p1 +%if 0%{?fedora} >= 32 +%patch10 -p1 +%endif #disable plug-ins %if %{without mongodblibs} @@ -1273,7 +1277,6 @@ gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service -install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf %else install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi %endif @@ -1350,12 +1353,13 @@ fi %config(noreplace) %{_sysconfdir}/uwsgi.ini %if %{with systemd} %{_unitdir}/uwsgi.service -%{_tmpfilesdir}/uwsgi.conf %else %{_initddir}/uwsgi %endif %dir %{_sysconfdir}/uwsgi.d -%if %{without systemd} +%if %{with systemd} +%attr(0775,uwsgi,uwsgi) %dir %{_rundir}/uwsgi +%else %attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi %endif %doc README README.Fedora CHANGELOG diff --git a/uwsgi_fix_psgi.patch b/uwsgi_fix_psgi.patch new file mode 100644 index 0000000..0c47dba --- /dev/null +++ b/uwsgi_fix_psgi.patch @@ -0,0 +1,38 @@ +diff --git a/plugins/psgi/psgi.h b/plugins/psgi/psgi.h +index 92e6b588..064041a2 100644 +--- a/plugins/psgi/psgi.h ++++ b/plugins/psgi/psgi.h +@@ -87,3 +87,5 @@ void uwsgi_perl_exec(char *); + + void uwsgi_perl_check_auto_reload(void); + void uwsgi_psgi_preinit_apps(void); ++ ++extern struct uwsgi_perl uperl; +diff --git a/plugins/psgi/psgi_loader.c b/plugins/psgi/psgi_loader.c +index 1e61f0e9..a9211185 100644 +--- a/plugins/psgi/psgi_loader.c ++++ b/plugins/psgi/psgi_loader.c +@@ -1,7 +1,6 @@ + #include "psgi.h" + + extern struct uwsgi_server uwsgi; +-struct uwsgi_perl uperl; + + extern struct uwsgi_plugin psgi_plugin; + +diff --git a/plugins/psgi/psgi_plugin.c b/plugins/psgi/psgi_plugin.c +index e1177be2..8ca0a2ed 100644 +--- a/plugins/psgi/psgi_plugin.c ++++ b/plugins/psgi/psgi_plugin.c +@@ -3,11 +3,7 @@ + extern char **environ; + extern struct uwsgi_server uwsgi; + +-#ifdef __APPLE__ +-extern struct uwsgi_perl uperl; +-#else + struct uwsgi_perl uperl; +-#endif + + struct uwsgi_plugin psgi_plugin; + From d05aba75a89b2a8557c0171b871550ac102e5df8 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 12:02:46 -0500 Subject: [PATCH 326/427] Fix python plugins provides BZ 1628147 --- uwsgi.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index c523a3b..0519550 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -272,6 +272,7 @@ Summary: Python 2 decorators providing access to the uwsgi API Requires: uwsgi = %{version}-%{release} Requires: uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: python-uwsgidecorators < 2.0.16-4 +Provides: python-uwsgidecorators = %{version}-%{release} %description -n python2-uwsgidecorators The uwsgidecorators Python 2 module provides higher-level access to the uWSGI API. @@ -284,6 +285,7 @@ Requires: uwsgi = %{version}-%{release} Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} %if 0%{?rhel} == 7 Obsoletes: python3-uwsgidecorators < 2.0.16-4 +Provides: python3-uwsgidecorators = %{version}-%{release} %endif %description -n python%{python3_pkgversion}-uwsgidecorators @@ -620,6 +622,7 @@ This package contains the geoip plugin for uWSGI Summary: uWSGI - Plugin for Python 2 GEvent support Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 +Provides: uwsgi-plugin-gevent = %{version}-%{release} %description -n uwsgi-plugin-python2-gevent This package contains the Python 2 gevent plugin for uWSGI @@ -658,6 +661,7 @@ This package contains the glusterfs plugin for uWSGI Summary: uWSGI - Plugin for Python 2 Greenlet support Requires: python-greenlet, uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 +Provides: uwsgi-plugin-greenlet = %{version}-%{release} %description -n uwsgi-plugin-python2-greenlet This package contains the Python 2 greenlet plugin for uWSGI @@ -771,6 +775,7 @@ This package contains the pty plugin for uWSGI Summary: uWSGI - Plugin for Python 2 support Requires: python2, uwsgi-plugin-common = %{version}-%{release} Obsoletes: uwsgi-plugin-python < 2.0.16-4 +Provides: uwsgi-plugin-python = %{version}-%{release} %description -n uwsgi-plugin-python2 This package contains the Python 2 plugin for uWSGI @@ -782,6 +787,7 @@ Summary: uWSGI - Plugin for Python %{python3_version} support Requires: python%{python3_pkgversion}, uwsgi-plugin-common = %{version}-%{release} %if 0%{?rhel} == 7 Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 +Provides: uwsgi-plugin-python3 = %{version}-%{release} %endif %description -n uwsgi-plugin-python%{python3_pkgversion} @@ -867,6 +873,7 @@ This package contains the ssi plugin for uWSGI Summary: uWSGI - Plugin for Tornado (Python 2) support Requires: uwsgi-plugin-common = %{version}-%{release}, python-tornado Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 +Provides: uwsgi-plugin-tornado = %{version}-%{release} %description -n uwsgi-plugin-python2-tornado This package contains the tornado (Python 2) plugin for uWSGI @@ -878,6 +885,7 @@ Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado %if 0%{?fedora} && 0%{?fedora} < 29 Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 +Provides: uwsgi-plugin-tornado3 = %{version}-%{release} %endif %description -n uwsgi-plugin-python%{python3_pkgversion}-tornado From 71672ba1c3f43423bcd12b8ae58b10f5e49dc877 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 12:04:28 -0500 Subject: [PATCH 327/427] change mkdirs for install -d yes, I know I'd decided to use mkdir because it only creates directories, but since some directories also require extra permissions I didn't wanna mix mkdir+chmod and now I ended up with some dirs created with mkdir and some with install -d and i hate it. --- uwsgi.spec | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0519550..97c885a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1237,15 +1237,17 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --p %install -mkdir -p %{buildroot}%{_sysconfdir}/uwsgi.d -mkdir -p %{buildroot}%{_usrsrc}/uwsgi/%{version} -mkdir -p %{buildroot}%{_includedir}/uwsgi -mkdir -p %{buildroot}%{_libdir}/uwsgi +install -d %{buildroot}%{_sysconfdir}/uwsgi.d +install -d %{buildroot}%{_usrsrc}/uwsgi/%{version} +install -d %{buildroot}%{_includedir}/uwsgi +install -d %{buildroot}%{_libdir}/uwsgi %if %{without systemd} install -d -m 0775 %{buildroot}%{_localstatedir}/run/uwsgi +%else +install -d -m 0775 %{buildroot}%{_rundir}/uwsgi %endif %if %{with mono} -mkdir -p %{buildroot}%{_monogacdir} +install -d %{buildroot}%{_monogacdir} %endif mkdir docs tar -C docs/ --strip-components=1 -xvzf %{SOURCE4} From bc6183b9e22106369cab61881dee9346b560f5d1 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 12:10:48 -0500 Subject: [PATCH 328/427] New release to fix several BZ --- uwsgi.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 97c885a..04d7062 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1773,6 +1773,12 @@ fi %changelog +* Tue Apr 07 2020 Jorge A Gallegos - 2.0.18-6 +- change mkdirs for install -d (Jorge Gallegos) +- Fix python plugins provides BZ 1628147 (Jorge Gallegos) +- Add a fix for psgi + GCC10 BZ 1794335 (Jorge Gallegos) +- Move path options outside main config BZ 1687403 (Jorge Gallegos) + * Fri Jan 31 2020 Fedora Release Engineering - 2.0.18-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 661b66920f84ec8a2baaea6e733c267db7f0d9b6 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 12:15:51 -0500 Subject: [PATCH 329/427] Remove old source files --- sources | 2 -- 1 file changed, 2 deletions(-) diff --git a/sources b/sources index 60c4030..e8512e0 100644 --- a/sources +++ b/sources @@ -1,4 +1,2 @@ -SHA512 (uwsgi-2.0.17.1.tar.gz) = 10d357961fde3a3f5f8e77986cc647313f95a33243e24c2afc482fce21df68a8ae48f90e7b5b76d7edc3cf8fd474d99823d6d60ef7477349abc65a319222f11b -SHA512 (uwsgi-docs-32a8f73.tar.gz) = 687240d9c33cb44061b3e43746354a14cfa49162ee25100c97866c0405878b9bc62164b6dbe2acae451edb674d9fd900933062ebd5755b728eeec3f7fe7eda36 SHA512 (uwsgi-2.0.18.tar.gz) = 6561703279bcc4a81311d033810ac066d0f113bab13b0942f3eef86cac29c584a6641b52476840d6895151aee5ed064ae2d03b18932cf7f47e62f4eeed76da61 SHA512 (uwsgi-docs-8d868ea.tar.gz) = 1ebf9bbe42d7a67553ff1081a2322fc00c72b72fa52879bba3b7ce8d9f4934b5643d96444ce75559b9f7303be4cdc0453ae2b4d73f1fa13cfc32f69d522bc2f0 From 30e2365eb48a073708dd8638c0017a0cfd3d280d Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Tue, 7 Apr 2020 12:26:19 -0500 Subject: [PATCH 330/427] Forgot to remove this file now it's unused --- uwsgi.tmpfiles | 1 - 1 file changed, 1 deletion(-) delete mode 100644 uwsgi.tmpfiles diff --git a/uwsgi.tmpfiles b/uwsgi.tmpfiles deleted file mode 100644 index 293cea5..0000000 --- a/uwsgi.tmpfiles +++ /dev/null @@ -1 +0,0 @@ -d /run/uwsgi 0775 uwsgi uwsgi From 2a49ef202d4c5eebab6566b99f67a6e8472dbd40 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 27 Apr 2020 14:25:20 -0500 Subject: [PATCH 331/427] Revert "Forgot to remove this file now it's unused" This reverts commit 30e2365eb48a073708dd8638c0017a0cfd3d280d. --- uwsgi.tmpfiles | 1 + 1 file changed, 1 insertion(+) create mode 100644 uwsgi.tmpfiles diff --git a/uwsgi.tmpfiles b/uwsgi.tmpfiles new file mode 100644 index 0000000..293cea5 --- /dev/null +++ b/uwsgi.tmpfiles @@ -0,0 +1 @@ +d /run/uwsgi 0775 uwsgi uwsgi From 0b6c3eba0c1a5a951ac781a8316d3472a66d11b5 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 27 Apr 2020 14:31:08 -0500 Subject: [PATCH 332/427] Re-using tmpfiles.d trick Now I get it, my apologies Carl, you were right. Using tmpfiles.d is probably the only way to accomplish this. --- uwsgi.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0e92aa8..627e463 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -145,6 +145,7 @@ Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Source5: README.Fedora Source6: uwsgi.init +Source7: uwsgi.tmpfiles Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch @@ -1243,8 +1244,6 @@ install -d %{buildroot}%{_includedir}/uwsgi install -d %{buildroot}%{_libdir}/uwsgi %if %{without systemd} install -d -m 0775 %{buildroot}%{_localstatedir}/run/uwsgi -%else -install -d -m 0775 %{buildroot}%{_rundir}/uwsgi %endif %if %{with mono} install -d %{buildroot}%{_monogacdir} @@ -1287,6 +1286,7 @@ gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini %if %{with systemd} install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service +install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf %else install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi %endif @@ -1363,13 +1363,12 @@ fi %config(noreplace) %{_sysconfdir}/uwsgi.ini %if %{with systemd} %{_unitdir}/uwsgi.service +%{_tmpfilesdir}/uwsgi.conf %else %{_initddir}/uwsgi %endif %dir %{_sysconfdir}/uwsgi.d -%if %{with systemd} -%attr(0775,uwsgi,uwsgi) %dir %{_rundir}/uwsgi -%else +%if %{without systemd} %attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi %endif %doc README README.Fedora CHANGELOG From 82821ca03dddb0b6eb19da8aa372e9918cf8d0e7 Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Mon, 27 Apr 2020 14:51:19 -0500 Subject: [PATCH 333/427] Tagging new release --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 627e463..c1b988d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1772,6 +1772,9 @@ fi %changelog +* Mon Apr 27 2020 Jorge A Gallegos - 2.0.18-7 +- Re-introducing tmpfiles.d (Jorge Gallegos) + * Tue Apr 07 2020 Jorge A Gallegos - 2.0.18-6 - change mkdirs for install -d (Jorge Gallegos) - Fix python plugins provides BZ 1628147 (Jorge Gallegos) From 3d1927f6baa6952457067541e48f06b42e774ccf Mon Sep 17 00:00:00 2001 From: Jorge Gallegos Date: Wed, 13 May 2020 11:52:02 -0500 Subject: [PATCH 334/427] Patching php-plugin for segfault --- uwsgi.spec | 8 +++++++- uwsgi_fix_php74_zend.patch | 16 ++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_php74_zend.patch diff --git a/uwsgi.spec b/uwsgi.spec index c1b988d..b6cc8c5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -159,6 +159,8 @@ Patch7: uwsgi_fix_mono.patch Patch9: uwsgi-2.0.16-glfs.patch # https://github.com/unbit/uwsgi/pull/2141 Patch10: uwsgi_fix_psgi.patch +# https://github.com/unbit/uwsgi/pull/2105 +Patch11: uwsgi_fix_php74_zend.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1144,6 +1146,7 @@ cp -p %{SOURCE5} README.Fedora %if 0%{?fedora} >= 32 %patch10 -p1 %endif +%patch11 -p1 #disable plug-ins %if %{without mongodblibs} @@ -1772,6 +1775,9 @@ fi %changelog +* Tue May 12 2020 Jorge A Gallegos - 2.0.18-8 +- Patching PHP plugin to fix Zend framework + * Mon Apr 27 2020 Jorge A Gallegos - 2.0.18-7 - Re-introducing tmpfiles.d (Jorge Gallegos) diff --git a/uwsgi_fix_php74_zend.patch b/uwsgi_fix_php74_zend.patch new file mode 100644 index 0000000..a6f47e8 --- /dev/null +++ b/uwsgi_fix_php74_zend.patch @@ -0,0 +1,16 @@ +diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c +index 72c390223..1690fb60c 100644 +--- a/plugins/php/php_plugin.c ++++ b/plugins/php/php_plugin.c +@@ -1115,10 +1115,9 @@ int uwsgi_php_request(struct wsgi_request *wsgi_req) { + + SG(request_info).path_translated = wsgi_req->file; + ++ memset(&file_handle, 0, sizeof(zend_file_handle)); + file_handle.type = ZEND_HANDLE_FILENAME; + file_handle.filename = real_filename; +- file_handle.free_filename = 0; +- file_handle.opened_path = NULL; + + if (php_request_startup(TSRMLS_C) == FAILURE) { + uwsgi_500(wsgi_req); From c8ebef779ae798ae2a7b7bd0d6c7f9bfea4dcb90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 26 May 2020 03:54:15 +0200 Subject: [PATCH 335/427] Rebuilt for Python 3.9 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index b6cc8c5..0af9bdc 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Tue May 26 2020 Miro Hrončok - 2.0.18-9 +- Rebuilt for Python 3.9 + * Tue May 12 2020 Jorge A Gallegos - 2.0.18-8 - Patching PHP plugin to fix Zend framework From af7825dd63f712d689bd7be8e332585b3563c805 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sun, 31 May 2020 11:43:02 +0200 Subject: [PATCH 336/427] Rebuild (gloox) --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0af9bdc..a894d65 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Sun May 31 2020 Björn Esser - 2.0.18-10 +- Rebuild (gloox) + * Tue May 26 2020 Miro Hrončok - 2.0.18-9 - Rebuilt for Python 3.9 From dfd1fb950b8bcb02bc5cb33115523cfff9dba365 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Thu, 25 Jun 2020 15:16:22 +0200 Subject: [PATCH 337/427] Perl 5.32 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a894d65..b159548 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Thu Jun 25 2020 Jitka Plesnikova - 2.0.18-11 +- Perl 5.32 rebuild + * Sun May 31 2020 Björn Esser - 2.0.18-10 - Rebuild (gloox) From 96127378c4f2359db32da2f32a36455cb7de4db8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jul 2020 13:29:39 +0000 Subject: [PATCH 338/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index b159548..43c7cf3 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Wed Jul 29 2020 Fedora Release Engineering - 2.0.18-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Thu Jun 25 2020 Jitka Plesnikova - 2.0.18-11 - Perl 5.32 rebuild From 7fa41a7e4a874f128ac2abc0c65c90177446110b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 1 Aug 2020 09:34:22 +0000 Subject: [PATCH 339/427] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 43c7cf3..c3d89e8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,10 @@ fi %changelog +* Sat Aug 01 2020 Fedora Release Engineering - 2.0.18-13 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Wed Jul 29 2020 Fedora Release Engineering - 2.0.18-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 168dba046ff10a9a4761f9b958359fc9f0dbdbef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 15 Sep 2020 16:02:41 +0200 Subject: [PATCH 340/427] Rebuilt for libevent soname change --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index c3d89e8..7a09744 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Tue Sep 15 2020 Miro Hrončok - 2.0.18-14 +- Rebuilt for libevent soname change + * Sat Aug 01 2020 Fedora Release Engineering - 2.0.18-13 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 930caad53a2ff37b07d19b32a34c5df262f5b55d Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 6 Jan 2021 20:25:37 +0900 Subject: [PATCH 341/427] F-34: rebuild against ruby 3.0 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 7a09744..dd91f9c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 14%{?dist} +Release: 15%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Wed Jan 06 2021 Mamoru TASAKA - 2.0.18-15 +- F-34: rebuild against ruby 3.0 + * Tue Sep 15 2020 Miro Hrončok - 2.0.18-14 - Rebuilt for libevent soname change From 19f789b571449c0e12f2ef25061155c1701dc9dd Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 22:51:21 +0000 Subject: [PATCH 342/427] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index dd91f9c..5b8bc5b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 15%{?dist} +Release: 16%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1775,6 +1775,9 @@ fi %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 2.0.18-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jan 06 2021 Mamoru TASAKA - 2.0.18-15 - F-34: rebuild against ruby 3.0 From c9429687f822e1cc5d7dc3ab5a6d40a5bb910018 Mon Sep 17 00:00:00 2001 From: Michael Scherer Date: Sun, 14 Feb 2021 09:56:00 +0100 Subject: [PATCH 343/427] Fix description for uwsgi-alarm-xmpp --- uwsgi.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 5b8bc5b..d78c514 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -369,7 +369,7 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl This package contains the alarm_curl alarm plugin for uWSGI %package -n uwsgi-alarm-xmpp -Summary: uWSGI - Curl alarm plugin +Summary: uWSGI - XMPP alarm plugin Requires: uwsgi-plugin-common = %{version}-%{release}, gloox %description -n uwsgi-alarm-xmpp From 531ba5952347dbec4078056692b0b581916aa68b Mon Sep 17 00:00:00 2001 From: Tomas Hrnciar Date: Mon, 19 Apr 2021 13:18:32 +0200 Subject: [PATCH 344/427] BuildRequire setuptools explicitly See https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools --- uwsgi.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/uwsgi.spec b/uwsgi.spec index d78c514..d9ea5f5 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -175,6 +175,7 @@ BuildRequires: python-greenlet-devel %endif %if %{with python3} BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-greenlet-devel %endif %if %{with python3_other} From 7401d4cffd30a85798a81bd22ddc61f96ba6d53c Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 21 May 2021 23:09:36 +0200 Subject: [PATCH 345/427] Perl 5.34 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index d9ea5f5..14e2e7f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 16%{?dist} +Release: 17%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1776,6 +1776,9 @@ fi %changelog +* Fri May 21 2021 Jitka Plesnikova - 2.0.18-17 +- Perl 5.34 rebuild + * Wed Jan 27 2021 Fedora Release Engineering - 2.0.18-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From e4283b49ff55c3698df200474ee0ecb57be4b223 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 4 Jun 2021 21:19:09 +0200 Subject: [PATCH 346/427] Rebuilt for Python 3.10 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 14e2e7f..b734b5b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -131,7 +131,7 @@ Name: uwsgi Version: 2.0.18 -Release: 17%{?dist} +Release: 18%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1776,6 +1776,9 @@ fi %changelog +* Fri Jun 04 2021 Python Maint - 2.0.18-18 +- Rebuilt for Python 3.10 + * Fri May 21 2021 Jitka Plesnikova - 2.0.18-17 - Perl 5.34 rebuild From a94cfe59a94983bd30a50ae428f9a848440f3ba3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 17 Jun 2021 02:06:02 +0200 Subject: [PATCH 347/427] Orphaned for 6+ weeks --- .gitignore | 48 - README.Fedora | 6 - dead.package | 1 + emperor.ini | 7 - fedora.ini | 81 - sources | 2 - uwsgi-2.0.16-glfs.patch | 10 - uwsgi.init | 92 -- uwsgi.service | 16 - uwsgi.spec | 2333 ----------------------------- uwsgi.tmpfiles | 1 - uwsgi_fix_lua.patch | 31 - uwsgi_fix_mongodb.patch | 269 ---- uwsgi_fix_mono.patch | 15 - uwsgi_fix_php74_zend.patch | 16 - uwsgi_fix_psgi.patch | 38 - uwsgi_fix_rpath.patch | 64 - uwsgi_ruby20_compatibility.patch | 42 - uwsgi_trick_chroot_rpmbuild.patch | 16 - uwsgi_v8-314_compatibility.patch | 12 - 20 files changed, 1 insertion(+), 3099 deletions(-) delete mode 100644 .gitignore delete mode 100644 README.Fedora create mode 100644 dead.package delete mode 100644 emperor.ini delete mode 100644 fedora.ini delete mode 100644 sources delete mode 100644 uwsgi-2.0.16-glfs.patch delete mode 100644 uwsgi.init delete mode 100644 uwsgi.service delete mode 100644 uwsgi.spec delete mode 100644 uwsgi.tmpfiles delete mode 100644 uwsgi_fix_lua.patch delete mode 100644 uwsgi_fix_mongodb.patch delete mode 100644 uwsgi_fix_mono.patch delete mode 100644 uwsgi_fix_php74_zend.patch delete mode 100644 uwsgi_fix_psgi.patch delete mode 100644 uwsgi_fix_rpath.patch delete mode 100644 uwsgi_ruby20_compatibility.patch delete mode 100644 uwsgi_trick_chroot_rpmbuild.patch delete mode 100644 uwsgi_v8-314_compatibility.patch diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 943f260..0000000 --- a/.gitignore +++ /dev/null @@ -1,48 +0,0 @@ -*.src.rpm -*.swp -*~ -*.log -/results_uwsgi -/uwsgi-1.0.4.tar.gz -/uwsgi-1.2.3.tar.gz -/uwsgi-wiki-doc-v41.txt -/uwsgi-1.2.4.tar.gz -/uwsgi-wiki-doc-v43.txt -/uwsgi-1.2.6.tar.gz -/uwsgi-1.4.5.tar.gz -/uwsgi-1.9.8.tar.gz -/1.9.17.tar.gz -/uwsgi-doc-1.9.17.tar.gz -/uwsgi-1.9.17.tar.gz -/uwsgi-docs-b86b3f7.tar.gz -/uwsgi-1.9.18.2.tar.gz -/uwsgi-docs-71f2d78.tar.gz -/uwsgi-1.9.19.tar.gz -/uwsgi-docs-119b215.tar.gz -/uwsgi-2.0.6.tar.gz -/uwsgi-docs-d2c4969.tar.gz -/uwsgi-2.0.7.tar.gz -/uwsgi-docs-f551708.tar.gz -/uwsgi-2.0.9.tar.gz -/uwsgi-docs-bc49905.tar.gz -/uwsgi-docs-4ac8256.tar.gz -/uwsgi-2.0.11.tar.gz -/uwsgi-docs-c96716d.tar.gz -/uwsgi-docs-85d6b16.tar.gz -/uwsgi-2.0.11.1.tar.gz -/uwsgi-2.0.11.2.tar.gz -/uwsgi-docs-2d5b92a.tar.gz -/uwsgi-docs-5f5f899.tar.gz -/uwsgi-2.0.12.tar.gz -/uwsgi-2.0.13.1.tar.gz -/uwsgi-docs-0326082.tar.gz -/uwsgi-2.0.14.tar.gz -/uwsgi-docs-f6eacc5.tar.gz -/uwsgi-2.0.15.tar.gz -/uwsgi-docs-1610d37.tar.gz -/uwsgi-2.0.16.tar.gz -/uwsgi-docs-eb4ad98.tar.gz -/uwsgi-2.0.17.1.tar.gz -/uwsgi-docs-32a8f73.tar.gz -/uwsgi-2.0.18.tar.gz -/uwsgi-docs-8d868ea.tar.gz diff --git a/README.Fedora b/README.Fedora deleted file mode 100644 index 1a12a2c..0000000 --- a/README.Fedora +++ /dev/null @@ -1,6 +0,0 @@ -The build profile used to build this package is shipped along with the --devel subpackage and is located in the ``buildconf`` subdirectory in the -src directory. -A copy of the documentation can be obtained by installing the ``uwsgi-docs`` -package. The documentation is a copy as of the git SHA: - diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..5204a84 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +Orphaned for 6+ weeks diff --git a/emperor.ini b/emperor.ini deleted file mode 100644 index d348937..0000000 --- a/emperor.ini +++ /dev/null @@ -1,7 +0,0 @@ -[uwsgi] -uid = uwsgi -gid = uwsgi -emperor = /etc/uwsgi.d -chmod-socket = 660 -emperor-tyrant = true -cap = setgid,setuid diff --git a/fedora.ini b/fedora.ini deleted file mode 100644 index 35298b8..0000000 --- a/fedora.ini +++ /dev/null @@ -1,81 +0,0 @@ -[uwsgi] -inherit = core -bin_name = uwsgi -xml = libxml2 -yaml = libyaml -json = jansson -pcre = auto -routing = auto -ssl = auto -malloc_implementation = libc -embedded_plugins = corerouter, echo, ping -plugins = airbrake, - alarm_curl, - alarm_xmpp, - cache, - carbon, - cgi, - cheaper_busyness, - cplusplus, - curl_cron, - dumbloop, - dummy, - fastrouter, - forkptyrouter, - geoip, - graylog2, - http, - ldap, - logcrypto, - logfile, - logpipe, - logsocket, - lua, - msgpack, - nagios, - notfound, - pam, - php, - pty, - rack, - rawrouter, - redislog, - router_basicauth, - router_cache, - router_expires, - router_hash, - router_http, - router_memcached, - router_metrics, - router_radius, - router_redirect, - router_redis, - router_rewrite, - router_spnego, - router_static, - router_uwsgi, - router_xmldir, - rpc, - rrdtool, - rsyslog, - ruby19, - spooler, - sqlite3, - ssi, - sslrouter, - stats_pusher_file, - stats_pusher_socket, - stats_pusher_statsd, - syslog, - transformation_chunked, - transformation_gzip, - transformation_offload, - transformation_template, - transformation_tofile, - transformation_toupper, - ugreen, - webdav, - xattr, - xslt, - zabbix, - zergpool diff --git a/sources b/sources deleted file mode 100644 index e8512e0..0000000 --- a/sources +++ /dev/null @@ -1,2 +0,0 @@ -SHA512 (uwsgi-2.0.18.tar.gz) = 6561703279bcc4a81311d033810ac066d0f113bab13b0942f3eef86cac29c584a6641b52476840d6895151aee5ed064ae2d03b18932cf7f47e62f4eeed76da61 -SHA512 (uwsgi-docs-8d868ea.tar.gz) = 1ebf9bbe42d7a67553ff1081a2322fc00c72b72fa52879bba3b7ce8d9f4934b5643d96444ce75559b9f7303be4cdc0453ae2b4d73f1fa13cfc32f69d522bc2f0 diff --git a/uwsgi-2.0.16-glfs.patch b/uwsgi-2.0.16-glfs.patch deleted file mode 100644 index fc41c38..0000000 --- a/uwsgi-2.0.16-glfs.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -up uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs uwsgi-2.0.16/plugins/glusterfs/glusterfs.c ---- uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs 2018-04-03 14:35:48.099323330 +0200 -+++ uwsgi-2.0.16/plugins/glusterfs/glusterfs.c 2018-04-03 14:35:07.573068567 +0200 -@@ -1,5 +1,5 @@ - #include --#include -+#include - - extern struct uwsgi_server uwsgi; - diff --git a/uwsgi.init b/uwsgi.init deleted file mode 100644 index dc9c445..0000000 --- a/uwsgi.init +++ /dev/null @@ -1,92 +0,0 @@ -#!/bin/sh -# -# uwsgi - this script starts and stops the uwsgi emperor -# -# chkconfig: - 85 15 -# description: Fast, self-healing, application container server -# processname: uwsgi -# config: /etc/uwsgi.ini -# config: /etc/uwsgi.d - -# Source function library. -. /etc/rc.d/init.d/functions - -PATH=/sbin:/bin:/usr/sbin:/usr/bin -PROG=/usr/sbin/uwsgi -OWNER=uwsgi -NAME=uwsgi -DESC="Fast, self-healing, application container server" -DAEMON_OPTS="--ini /etc/uwsgi.ini --pidfile /var/run/uwsgi/uwsgi.pid --stats /var/run/uwsgi/stats.sock --daemonize /var/log/uwsgi.log" - -[ -f /etc/sysconfig/uwsgi ] && . /etc/sysconfig/uwsgi - -lockfile=/var/lock/subsys/uwsgi - -start () { - echo -n "Starting $NAME $DESC: " - daemon $PROG $DAEMON_OPTS - retval=$? - echo - [ $retval -eq 0 ] && touch $lockfile - return $retval -} - -stop () { - echo -n "Stopping $NAME $DESC: " - # uWSGI docs say INT is a gentler way to stop - killproc $PROG -INT - retval=$? - echo - [ $retval -eq 0 ] && rm -f $lockfile - return $retval -} - -reload () { - echo "Reloading $NAME" - killproc $PROG -HUP - RETVAL=$? - echo -} - -restart () { - stop - start -} - -rh_status () { - status $PROG -} - -rh_status_q() { - rh_status >/dev/null 2>&1 -} - -case "$1" in - start) - rh_status_q && exit 0 - $1 - ;; - stop) - rh_status_q || exit 0 - $1 - ;; - restart) - $1 - ;; - reload) - rh_status_q || exit 7 - $1 - ;; - status) - rh_status - ;; - condrestart|try-restart) - rh_status_q || exit 0 - restart - ;; - *) - echo "Usage: $0 {start|stop|restart|condrestart|try-restart|reload|status}" >&2 - exit 2 - ;; -esac -exit 0 diff --git a/uwsgi.service b/uwsgi.service deleted file mode 100644 index 73db94c..0000000 --- a/uwsgi.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=uWSGI Emperor Service -After=syslog.target - -[Service] -EnvironmentFile=-/etc/sysconfig/uwsgi -ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini --pidfile /run/uwsgi/uwsgi.pid --stats /run/uwsgi/stats.sock -ExecReload=/bin/kill -HUP $MAINPID -KillSignal=SIGINT -Restart=always -Type=notify -StandardError=syslog -NotifyAccess=all - -[Install] -WantedBy=multi-user.target diff --git a/uwsgi.spec b/uwsgi.spec deleted file mode 100644 index b734b5b..0000000 --- a/uwsgi.spec +++ /dev/null @@ -1,2333 +0,0 @@ -# Documentation sources: -%global commit 8d868eadfb460785a735030271afa233ac854763 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global docrepo uwsgi-docs - -%{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} -%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} - -# This is primarily built for fedora, make it easy right now -%if 0%{?fedora} -%bcond_without systemd -%bcond_without go -%if 0%{?fedora} < 31 -%bcond_without python2 -%bcond_without python2_greenlet -%endif -%bcond_without python3 -%bcond_without ruby19 -%bcond_without tuntap -%bcond_without zeromq -%bcond_without perl -%bcond_without glusterfs -# javapackages-tools retired (apache-ivy orphanage) -%bcond_with java -# Fedora httpd includes mod_proxy_uwsgi -# https://bugzilla.redhat.com/show_bug.cgi?id=1574335 -%bcond_with mod_proxy_uwsgi -#mono -%ifarch %{mono_arches} -%bcond_without mono -%else -%bcond_with mono -%endif -# mongodblibs -# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 -%bcond_with mongodblibs -# v8-314 retired -%bcond_with v8 -#mongodblibs dependency -%if %{without mongodblibs} -%bcond_with gridfs -%else -%bcond_without gridfs -%endif -#Fedora endif -%endif - -# Conditionally disable some things in epel6 -%if 0%{?rhel} == 6 -# javapackages-tools retired in epel (apache-ivy orphanage) -%bcond_with java -# el6 doesn't ship with systemd -%bcond_with systemd -# el6 doesn't have go -%bcond_with go -%bcond_without python2 -%bcond_without python2_greenlet -# el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 -%bcond_with ruby19 -# el6 doesn't have perl-PSGI -# el6 does have perl-Coro -%bcond_with perl -# el6 httpd does not include mod_proxy_uwsgi -%bcond_without mod_proxy_uwsgi -# this fails in el not sure why -%bcond_with gridfs -%bcond_with tuntap -%bcond_with mongodblibs -%global manual_py_compile 0 -%else -%global manual_py_compile 1 -%endif - -# Conditionally enable/disable some things in epel7 -%if 0%{?rhel} == 7 -# el7 does have java -%bcond_without java -# el7 does have systemd -%bcond_without systemd -%bcond_without python2 -%bcond_without python3 -%bcond_without python3_other -# el7 doesn't have zeromq -%bcond_with zeromq -# el7 does have python-greenlet, but only on x86_64 -%ifarch x86_64 -%bcond_without python2_greenlet -%endif -# el7 does have perl-PSGI -# el7 does have perl-Coro -%bcond_without perl -# el7 httpd does not include mod_proxy_uwsgi -%bcond_without mod_proxy_uwsgi -# el7 can now build glusterfs but only on x86_64 -%ifnarch x86_64 -%bcond_with glusterfs -%else -%bcond_without glusterfs -%endif -# this fails in el7 not sure why -%bcond_with gridfs -%endif - -# Turn off byte compilation so it doesn't try -# to auto-optimize the code in /usr/src/uwsgi -%if %{manual_py_compile} == 1 -%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') -%endif - -# Disable router_access in fedora >= 28 because tcp_wrappers deprecation -%if 0%{?fedora} >= 28 -%bcond_with tcp_wrappers -%else -%bcond_without tcp_wrappers -%endif - -# Set %%__python to the newest possible version -%if %{with python3} -%global __python %{__python3} -%else -%if %{with python3_other} -%global __python %{__python3_other} -%else -%if %{with python2} -%global __python %{__python2} -%else -%global __python /usr/bin/true -%endif -%endif -%endif - -Name: uwsgi -Version: 2.0.18 -Release: 18%{?dist} -Summary: Fast, self-healing, application container server -# uwsgi is licensed under GPLv2 with a linking exception -# docs are licensed under MIT -License: GPLv2 with exceptions and MIT -URL: https://github.com/unbit/uwsgi - -Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz -Source1: fedora.ini -Source2: uwsgi.service -Source3: emperor.ini -Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz -Source5: README.Fedora -Source6: uwsgi.init -Source7: uwsgi.tmpfiles - -Patch0: uwsgi_trick_chroot_rpmbuild.patch -Patch1: uwsgi_fix_rpath.patch -Patch2: uwsgi_ruby20_compatibility.patch -Patch3: uwsgi_fix_lua.patch -# https://github.com/unbit/uwsgi/issues/882 -Patch5: uwsgi_fix_mongodb.patch -Patch6: uwsgi_v8-314_compatibility.patch -Patch7: uwsgi_fix_mono.patch -# https://github.com/unbit/uwsgi/pull/1772 -Patch9: uwsgi-2.0.16-glfs.patch -# https://github.com/unbit/uwsgi/pull/2141 -Patch10: uwsgi_fix_psgi.patch -# https://github.com/unbit/uwsgi/pull/2105 -Patch11: uwsgi_fix_php74_zend.patch - -BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel -BuildRequires: libyaml-devel, ruby-devel -%if %{with tcp_wrappers} -BuildRequires: tcp_wrappers-devel -%endif -%if %{with python2} -BuildRequires: python2-devel -%if %{with python2_greenlet} -BuildRequires: python-greenlet-devel -%endif -%endif -%if %{with python3} -BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: python%{python3_pkgversion}-setuptools -BuildRequires: python%{python3_pkgversion}-greenlet-devel -%endif -%if %{with python3_other} -BuildRequires: python%{python3_other_pkgversion}-devel -%endif -%if %{with glusterfs} -BuildRequires: glusterfs-devel, glusterfs-api-devel -%endif -BuildRequires: lua-devel, ruby, pcre-devel -BuildRequires: php-devel, php-embedded, libedit-devel, krb5-devel -BuildRequires: openssl-devel -BuildRequires: bzip2-devel, gmp-devel, pam-devel -BuildRequires: sqlite-devel, libcap-devel -BuildRequires: httpd-devel, libcurl-devel -BuildRequires: gloox-devel, libstdc++-devel -BuildRequires: GeoIP-devel, libevent-devel, zlib-devel -BuildRequires: openldap-devel, boost-devel -BuildRequires: libattr-devel, libxslt-devel -%if %{with perl} -BuildRequires: perl-devel, perl-ExtUtils-Embed, perl-Coro -%endif -%if %{with zeromq} -BuildRequires: zeromq-devel -%endif -%if %{with go} -BuildRequires: gcc-go -%endif -%if %{with systemd} -BuildRequires: systemd-devel, systemd-units -%endif -%if %{with mono} -BuildRequires: mono-devel, mono-web, glib2-devel -%endif -%if %{with v8} -%if 0%{?fedora} >= 25 -BuildRequires: v8-314-devel -%else -BuildRequires: v8-devel -%endif -%endif -%if %{with mongodblibs} -%if 0%{?fedora} >= 30 -BuildRequires: mongo-cxx-driver-legacy-devel -%else -BuildRequires: mongo-cxx-driver-devel -%endif -%endif - -%if 0%{?fedora} >= 28 -BuildRequires: libargon2-devel -Obsoletes: uwsgi-router-access <= 2.0.16 -%endif - -Obsoletes: uwsgi-loggers <= 1.9.8-1 -Obsoletes: uwsgi-routers <= 2.0.6 -Obsoletes: uwsgi-plugin-erlang <= 1.9.20-1 -Obsoletes: uwsgi-plugin-admin <= 2.0.6 - -Requires(pre): shadow-utils -%if %{with systemd} -%{?systemd_requires} -%else -Requires(post): chkconfig -Requires(preun): chkconfig -Requires(preun): initscripts -%endif - -%filter_requires_in %{_usrsrc} -%filter_provides_in %{_usrsrc} -%filter_provides_in %{_libdir}/uwsgi/.*\.so$ -%filter_setup - -%description -uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly -application container server. Born as a WSGI-only server, over time it has -evolved in a complete stack for networked/clustered web applications, -implementing message/object passing, caching, RPC and process management. -It uses the uwsgi (all lowercase, already included by default in the Nginx -and Cherokee releases) protocol for all the networking/interprocess -communications. Can be run in preforking mode, threaded, -asynchronous/evented and supports various form of green threads/co-routine -(like uGreen and Fiber). Sysadmin will love it as it can be configured via -command line, environment variables, xml, .ini and yaml files and via LDAP. -Being fully modular can use tons of different technology on top of the same -core. - -%package -n uwsgi-devel -Summary: uWSGI - Development header files and libraries -Requires: uwsgi = %{version}-%{release} - -%description -n uwsgi-devel -This package contains the development header files and libraries -for uWSGI extensions - -%if %{with python2} -%package -n python2-uwsgidecorators -Summary: Python 2 decorators providing access to the uwsgi API -Requires: uwsgi = %{version}-%{release} -Requires: uwsgi-plugin-python2 = %{version}-%{release} -Obsoletes: python-uwsgidecorators < 2.0.16-4 -Provides: python-uwsgidecorators = %{version}-%{release} - -%description -n python2-uwsgidecorators -The uwsgidecorators Python 2 module provides higher-level access to the uWSGI API. -%endif - -%if %{with python3} -%package -n python%{python3_pkgversion}-uwsgidecorators -Summary: Python %{python3_version} decorators providing access to the uwsgi API -Requires: uwsgi = %{version}-%{release} -Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} -%if 0%{?rhel} == 7 -Obsoletes: python3-uwsgidecorators < 2.0.16-4 -Provides: python3-uwsgidecorators = %{version}-%{release} -%endif - -%description -n python%{python3_pkgversion}-uwsgidecorators -The uwsgidecorators Python %{python3_version} module provides higher-level access to the uWSGI API. -%endif - -%if %{with python3_other} -%package -n python%{python3_other_pkgversion}-uwsgidecorators -Summary: Python %{python3_other_version} decorators providing access to the uwsgi API -Requires: uwsgi = %{version}-%{release} -Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release} - -%description -n python%{python3_other_pkgversion}-uwsgidecorators -The uwsgidecorators Python %{python3_other_version} module provides higher-level access to the uWSGI API. -%endif - -%package -n uwsgi-docs -Summary: uWSGI - Documentation -Requires: uwsgi - -%description -n uwsgi-docs -This package contains the documentation files for uWSGI - -%package -n uwsgi-plugin-common -Summary: uWSGI - Common plugins for uWSGI -Requires: uwsgi = %{version}-%{release} - -%description -n uwsgi-plugin-common -This package contains the most common plugins used with uWSGI. The -plugins included in this package are: cache, CGI, RPC, uGreen - -# Stats pushers - -%package -n uwsgi-stats-pusher-file -Summary: uWSGI - File Stats Pusher for uWSGI -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-stats-pusher-file -This package contains the stats_pusher_file plugin for uWSGI - -%if %{with mongodblibs} -%package -n uwsgi-stats-pusher-mongodb -Summary: uWSGI - MongoDB Stats Pusher for uWSGI -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-stats-pusher-mongodb -This package contains the stats_pusher_mongodb plugin for uWSGI -%endif - -%package -n uwsgi-stats-pusher-socket -Summary: uWSGI - Socket Stats Pusher for uWSGI -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-stats-pusher-socket -This package contains the stats_pusher_socket plugin for uWSGI - -%package -n uwsgi-stats-pusher-statsd -Summary: uWSGI - StatsD Stats Pusher for uWSGI -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-stats-pusher-statsd -This package contains the stats_pusher_statsd plugin for uWSGI - -%package -n uwsgi-stats-pusher-zabbix -Summary: uWSGI - Zabbix Stats Pusher for uWSGI -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-stats-pusher-zabbix -This package contains the zabbix plugin for uWSGI - -# Alarms - -%package -n uwsgi-alarm-curl -Summary: uWSGI - Curl alarm plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl - -%description -n uwsgi-alarm-curl -This package contains the alarm_curl alarm plugin for uWSGI - -%package -n uwsgi-alarm-xmpp -Summary: uWSGI - XMPP alarm plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, gloox - -%description -n uwsgi-alarm-xmpp -This package contains the alarm_xmpp alarm plugin for uWSGI - -# Transformations - -%package -n uwsgi-transformation-chunked -Summary: uWSGI - Chunked Transformation plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} - -%description -n uwsgi-transformation-chunked -This package contains the transformation_chunked plugin for uWSGI - -%package -n uwsgi-transformation-gzip -Summary: uWSGI - GZip Transformation plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} - -%description -n uwsgi-transformation-gzip -This package contains the transformation_gzip plugin for uWSGI - -%package -n uwsgi-transformation-offload -Summary: uWSGI - Off-Load Transformation plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} - -%description -n uwsgi-transformation-offload -This package contains the transformation_offload plugin for uWSGI - -%package -n uwsgi-transformation-template -Summary: uWSGI - Template Transformation plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} - -%description -n uwsgi-transformation-template -This package contains the transformation_template plugin for uWSGI - -%package -n uwsgi-transformation-tofile -Summary: uWSGI - ToFile Transformation plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} - -%description -n uwsgi-transformation-tofile -This package contains the transformation_tofile plugin for uWSGI - -%package -n uwsgi-transformation-toupper -Summary: uWSGI - ToUpper Transformation plugin -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-transformation-toupper -This package contains the transformation_toupper plugin for uWSGI - -# Loggers - -%package -n uwsgi-log-encoder-msgpack -Summary: uWSGI - msgpack log encoder plugin -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-log-encoder-msgpack -This package contains the msgpack log encoder plugin for uWSGI - -%package -n uwsgi-logger-crypto -Summary: uWSGI - logcrypto logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-logger-crypto -This package contains the logcrypto logger plugin for uWSGI - -%package -n uwsgi-logger-file -Summary: uWSGI - logfile logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-loggers <= 1.9.8-1 -Provides: uwsgi-loggers = %{version}-%{release} - -%description -n uwsgi-logger-file -This package contains the logfile logger plugin for uWSGI - -%package -n uwsgi-logger-graylog2 -Summary: uWSGI - Graylog2 logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, zlib - -%description -n uwsgi-logger-graylog2 -This package contains the graylog2 logger plugin for uWSGI - -%if %{with mongodblibs} -%package -n uwsgi-logger-mongodb -Summary: uWSGI - mongodblog logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-loggers <= 1.9.8-1 -Provides: uwsgi-loggers = %{version}-%{release} - -%description -n uwsgi-logger-mongodb -This package contains the mongodblog logger plugin for uWSGI -%endif - -%package -n uwsgi-logger-pipe -Summary: uWSGI - logpipe logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-logger-pipe -This package contains the logcrypto logger plugin for uWSGI - -%package -n uwsgi-logger-redis -Summary: uWSGI - redislog logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-loggers <= 1.9.8-1 -Provides: uwsgi-loggers = %{version}-%{release} - -%description -n uwsgi-logger-redis -This package contains the redislog logger plugin for uWSGI - -%package -n uwsgi-logger-rsyslog -Summary: uWSGI - rsyslog logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-plugin-rsyslog <= 1.9.8-1 -Provides: uwsgi-plugin-rsyslog = %{version}-%{release} - -%description -n uwsgi-logger-rsyslog -This package contains the rsyslog logger plugin for uWSGI - -%package -n uwsgi-logger-socket -Summary: uWSGI - logsocket logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-loggers <= 1.9.8-1 -Provides: uwsgi-loggers = %{version}-%{release} - -%description -n uwsgi-logger-socket -This package contains the logsocket logger plugin for uWSGI - -%package -n uwsgi-logger-syslog -Summary: uWSGI - syslog logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-plugin-syslog <= 1.9.8-1 -Provides: uwsgi-plugin-syslog = %{version}-%{release} - -%description -n uwsgi-logger-syslog -This package contains the syslog logger plugin for uWSGI - -%if %{with systemd} -%package -n uwsgi-logger-systemd -Summary: uWSGI - systemd journal logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-logger-systemd -This package contains the systemd journal logger plugin for uWSGI -%endif - -%if %{with zeromq} -%package -n uwsgi-logger-zeromq -Summary: uWSGI - ZeroMQ logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq - -%description -n uwsgi-logger-zeromq -This package contains the ZeroMQ logger plugin for uWSGI -%endif - -# Plugins - -%package -n uwsgi-plugin-airbrake -Summary: uWSGI - Plugin for AirBrake support -Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl - -%description -n uwsgi-plugin-airbrake -This package contains the airbrake plugin for uWSGI - -%package -n uwsgi-plugin-cache -Summary: uWSGI - Plugin for cache support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-cache -This package contains the cache plugin for uWSGI - -%package -n uwsgi-plugin-carbon -Summary: uWSGI - Plugin for Carbon/Graphite support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-carbon -This package contains the Carbon plugin for uWSGI (to use in graphite) - -%if %{with perl} -%package -n uwsgi-plugin-psgi -Summary: uWSGI - Plugin for PSGI support -Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-psgi -This package contains the PSGI plugin for uWSGI - -%package -n uwsgi-plugin-coroae -Summary: uWSGI - Plugin for PERL Coro support -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{version}-%{release}, perl-Coro - -%description -n uwsgi-plugin-coroae -This package contains the coroae plugin for uWSGI -%endif - -%package -n uwsgi-plugin-cheaper-busyness -Summary: uWSGI - Plugin for Cheaper Busyness algos -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-cheaper-busyness -This package contains the cheaper_busyness plugin for uWSGI - -%package -n uwsgi-plugin-cplusplus -Summary: uWSGI - Plugin for C++ support -Requires: uwsgi-plugin-common = %{version}-%{release}, libstdc++ - -%description -n uwsgi-plugin-cplusplus -This package contains the cplusplus plugin for uWSGI - -%package -n uwsgi-plugin-curl-cron -Summary: uWSGI - Plugin for CURL Cron support -Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl - -%description -n uwsgi-plugin-curl-cron -This package contains the curl_cron plugin for uWSGI - -%package -n uwsgi-plugin-dumbloop -Summary: uWSGI - Plugin for Dumb Loop support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-dumbloop -This package contains the dumbloop plugin for uWSGI - -%package -n uwsgi-plugin-dummy -Summary: uWSGI - Plugin for Dummy support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-dummy -This package contains the dummy plugin for uWSGI - -%package -n uwsgi-plugin-fiber -Summary: uWSGI - Plugin for Ruby Fiber support -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{version}-%{release} - -%description -n uwsgi-plugin-fiber -This package contains the fiber plugin for uWSGI - -%if %{with go} -%package -n uwsgi-plugin-gccgo -Summary: uWSGI - Plugin for GoLang support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-gccgo -This package contains the gccgo plugin for uWSGI -%endif - -%package -n uwsgi-plugin-geoip -Summary: uWSGI - Plugin for GeoIP support -Requires: uwsgi-plugin-common = %{version}-%{release}, GeoIP - -%description -n uwsgi-plugin-geoip -This package contains the geoip plugin for uWSGI - -%if %{with python2} -%package -n uwsgi-plugin-python2-gevent -Summary: uWSGI - Plugin for Python 2 GEvent support -Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent -Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 -Provides: uwsgi-plugin-gevent = %{version}-%{release} - -%description -n uwsgi-plugin-python2-gevent -This package contains the Python 2 gevent plugin for uWSGI -%endif - -%if %{with python3} -%package -n uwsgi-plugin-python%{python3_pkgversion}-gevent -Summary: uWSGI - Plugin for Python %{python3_version} GEvent support -Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent - -%description -n uwsgi-plugin-python%{python3_pkgversion}-gevent -This package contains the Python %{python3_version} gevent plugin for uWSGI -%endif - -%if %{with python3_other} -%package -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent -Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support -Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent - -%description -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent -This package contains the Python %{python3_other_version} gevent plugin for uWSGI -%endif - -%if %{with glusterfs} -%package -n uwsgi-plugin-glusterfs -Summary: uWSGI - Plugin for GlusterFS support -Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api - -%description -n uwsgi-plugin-glusterfs -This package contains the glusterfs plugin for uWSGI -%endif - -%if %{with python2} -%if %{with python2_greenlet} -%package -n uwsgi-plugin-python2-greenlet -Summary: uWSGI - Plugin for Python 2 Greenlet support -Requires: python-greenlet, uwsgi-plugin-python2 = %{version}-%{release} -Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 -Provides: uwsgi-plugin-greenlet = %{version}-%{release} - -%description -n uwsgi-plugin-python2-greenlet -This package contains the Python 2 greenlet plugin for uWSGI -%endif -%endif - -%if %{with python3} -%package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet -Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support -Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} - -%description -n uwsgi-plugin-python%{python3_pkgversion}-greenlet -This package contains the Python %{python3_version} greenlet plugin for uWSGI -%endif - -%if %{with gridfs} -%package -n uwsgi-plugin-gridfs -Summary: uWSGI - Plugin for GridFS support -Requires: uwsgi-plugin-common = %{version}-%{release}, libmongodb - -%description -n uwsgi-plugin-gridfs -This package contains the gridfs plugin for uWSGI -%endif - -%if %{with java} -%package -n uwsgi-plugin-jvm -Summary: uWSGI - Plugin for JVM support -BuildRequires: java-devel -Requires: uwsgi-plugin-common = %{version}-%{release}, java-headless, jpackage-utils - -%description -n uwsgi-plugin-jvm -This package contains the JVM plugin for uWSGI - -%package -n uwsgi-plugin-jwsgi -Summary: uWSGI - Plugin for JWSGI support -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release} - -%description -n uwsgi-plugin-jwsgi -This package contains the jwsgi plugin for uWSGI -%endif - -%package -n uwsgi-plugin-ldap -Summary: uWSGI - Plugin for LDAP support -Requires: uwsgi-plugin-common = %{version}-%{release}, openldap - -%description -n uwsgi-plugin-ldap -This package contains the ldap plugin for uWSGI - -%package -n uwsgi-plugin-lua -Summary: uWSGI - Plugin for LUA support -Requires: lua, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-lua -This package contains the lua plugin for uWSGI - -%if %{with zeromq} -%package -n uwsgi-plugin-mongrel2 -Summary: uWSGI - Plugin for Mongrel2 support -Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq - -%description -n uwsgi-plugin-mongrel2 -This package contains the mongrel2 plugin for uWSGI -%endif - -%if %{with mono} -%package -n uwsgi-plugin-mono -Summary: uWSGI - Plugin for Mono / .NET support -Requires: uwsgi-plugin-common = %{version}-%{release}, mono-web - -%description -n uwsgi-plugin-mono -This package contains the mono plugin for uWSGI -%endif - -%package -n uwsgi-plugin-nagios -Summary: uWSGI - Plugin for Nagios support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-nagios -This package contains the nagios plugin for uWSGI - -%package -n uwsgi-plugin-notfound -Summary: uWSGI - Plugin for notfound support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-notfound -This package contains the notfound plugin for uWSGI - -%package -n uwsgi-plugin-pam -Summary: uWSGI - Plugin for PAM support -Requires: uwsgi-plugin-common = %{version}-%{release}, pam - -%description -n uwsgi-plugin-pam -This package contains the PAM plugin for uWSGI - -%package -n uwsgi-plugin-php -Summary: uWSGI - Plugin for PHP support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-php -This package contains the PHP plugin for uWSGI - -%package -n uwsgi-plugin-pty -Summary: uWSGI - Plugin for PTY support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-pty -This package contains the pty plugin for uWSGI - -%if %{with python2} -%package -n uwsgi-plugin-python2 -Summary: uWSGI - Plugin for Python 2 support -Requires: python2, uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-plugin-python < 2.0.16-4 -Provides: uwsgi-plugin-python = %{version}-%{release} - -%description -n uwsgi-plugin-python2 -This package contains the Python 2 plugin for uWSGI -%endif - -%if %{with python3} -%package -n uwsgi-plugin-python%{python3_pkgversion} -Summary: uWSGI - Plugin for Python %{python3_version} support -Requires: python%{python3_pkgversion}, uwsgi-plugin-common = %{version}-%{release} -%if 0%{?rhel} == 7 -Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 -Provides: uwsgi-plugin-python3 = %{version}-%{release} -%endif - -%description -n uwsgi-plugin-python%{python3_pkgversion} -This package contains the Python %{python3_version} plugin for uWSGI -%endif - -%if %{with python3_other} -%package -n uwsgi-plugin-python%{python3_other_pkgversion} -Summary: uWSGI - Plugin for Python %{python3_other_version} support -Requires: python%{python3_other_pkgversion}, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-python%{python3_other_pkgversion} -This package contains the Python %{python3_other_version} plugin for uWSGI -%endif - -%package -n uwsgi-plugin-rack -Summary: uWSGI - Ruby rack plugin -Requires: rubygem-rack, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-rack -This package contains the rack plugin for uWSGI - -%package -n uwsgi-plugin-rbthreads -Summary: uWSGI - Ruby native threads support plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, ruby - -%description -n uwsgi-plugin-rbthreads -This package contains the rbthreads plugin for uWSGI - -%if %{with java} -%package -n uwsgi-plugin-ring -Summary: uWSGI - Clojure/Ring request handler support plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release}, clojure - -%description -n uwsgi-plugin-ring -This package contains the ring plugin for uWSGI -%endif - -%package -n uwsgi-plugin-rpc -Summary: uWSGI - Plugin for RPC support -Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-rpc -This package contains the RPC plugin for uWSGI - -%package -n uwsgi-plugin-rrdtool -Summary: uWSGI - Plugin for RRDTool support -Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-rrdtool -This package contains the RRD Tool plugin for uWSGI - -%package -n uwsgi-plugin-ruby -Summary: uWSGI - Plugin for Ruby support -Requires: ruby, uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-ruby -This package contains the ruby19 plugin for uWSGI - -%package -n uwsgi-plugin-spooler -Summary: uWSGI - Plugin for Remote Spooling support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-spooler -This package contains the spooler plugin for uWSGI - -%package -n uwsgi-plugin-sqlite3 -Summary: uWSGI - SQLite3 plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, sqlite - -%description -n uwsgi-plugin-sqlite3 -This package contains the sqlite3 plugin for uWSGI - -%package -n uwsgi-plugin-ssi -Summary: uWSGI - Server Side Includes plugin -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-ssi -This package contains the ssi plugin for uWSGI - -%if %{with python2} -%package -n uwsgi-plugin-python2-tornado -Summary: uWSGI - Plugin for Tornado (Python 2) support -Requires: uwsgi-plugin-common = %{version}-%{release}, python-tornado -Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 -Provides: uwsgi-plugin-tornado = %{version}-%{release} - -%description -n uwsgi-plugin-python2-tornado -This package contains the tornado (Python 2) plugin for uWSGI -%endif - -%if %{with python3} -%package -n uwsgi-plugin-python%{python3_pkgversion}-tornado -Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support -Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado -%if 0%{?fedora} && 0%{?fedora} < 29 -Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 -Provides: uwsgi-plugin-tornado3 = %{version}-%{release} -%endif - -%description -n uwsgi-plugin-python%{python3_pkgversion}-tornado -This package contains the tornado (Python %{python3_version}) plugin for uWSGI -%endif - -%package -n uwsgi-plugin-ugreen -Summary: uWSGI - Plugin for uGreen support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-ugreen -This package contains the uGreen plugin for uWSGI - -%if %{with v8} -%package -n uwsgi-plugin-v8 -Summary: uWSGI - Plugin for v8 support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-v8 -This package contains the v8 plugin for uWSGI -%endif - -%package -n uwsgi-plugin-webdav -Summary: uWSGI - Plugin for WebDAV support -Requires: uwsgi-plugin-common = %{version}-%{release}, libattr - -%description -n uwsgi-plugin-webdav -This package contains the webdav plugin for uWSGI - -%package -n uwsgi-plugin-xattr -Summary: uWSGI - Plugin for Extra Attributes support -Requires: uwsgi-plugin-common = %{version}-%{release}, libattr - -%description -n uwsgi-plugin-xattr -This package contains the xattr plugin for uWSGI - -%package -n uwsgi-plugin-xslt -Summary: uWSGI - Plugin for XSLT transformation support -Requires: uwsgi-plugin-common = %{version}-%{release}, libxslt - -%description -n uwsgi-plugin-xslt -This package contains the xslt plugin for uWSGI - -%package -n uwsgi-plugin-zergpool -Summary: uWSGI - Plugin for zergpool support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-plugin-zergpool -This package contains the zergpool plugin for uWSGI - -# Routers - -%if %{with tcp_wrappers} -%package -n uwsgi-router-access -Summary: uWSGI - Plugin for router_access router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-access -This package contains the router_access plugin for uWSGI -%endif - -%package -n uwsgi-router-basicauth -Summary: uWSGI - Plugin for Basic Auth router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-basicauth -This package contains the basicauth plugin for uWSGI - -%package -n uwsgi-router-cache -Summary: uWSGI - Plugin for Cache router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-cache -This package contains the cache router plugin for uWSGI - -%package -n uwsgi-router-expires -Summary: uWSGI - Plugin for Expires router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-expires -This package contains the expires router plugin for uWSGI - -%package -n uwsgi-router-fast -Summary: uWSGI - Plugin for FastRouter support -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-plugin-fastrouter <= 2.0.6 -Provides: uwsgi-plugin-fastrouter = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-fast -This package contains the fastrouter (proxy) plugin for uWSGI - -%package -n uwsgi-router-forkpty -Summary: uWSGI - Plugin for ForkPTY router support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-router-forkpty -This package contains the ForkPTY router plugin for uWSGI - -%package -n uwsgi-router-hash -Summary: uWSGI - Plugin for Hash router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-hash -This package contains the hash router plugin for uWSGI - -%package -n uwsgi-router-http -Summary: uWSGI - Plugin for HTTP router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-http -This package contains the http router plugin for uWSGI - -%package -n uwsgi-router-memcached -Summary: uWSGI - Plugin for Memcached router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-memcached -This package contains the memcached router plugin for uWSGI - -%package -n uwsgi-router-metrics -Summary: uWSGI - Plugin for Metrics router support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-router-metrics -This package contains the metrics router plugin for uWSGI - -%package -n uwsgi-router-radius -Summary: uWSGI - Plugin for Radius router support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-router-radius -This package contains the metrics router plugin for uWSGI - -%package -n uwsgi-router-raw -Summary: uWSGI - Plugin for Raw Router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-plugin-rawrouter <= 2.0.6 -Provides: uwsgi-plugin-rawrouter = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-raw -This package contains the Raw router plugin for uWSGI - -%package -n uwsgi-router-redirect -Summary: uWSGI - Plugin for Redirect router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-redirect -This package contains the redirect router plugin for uWSGI - -%package -n uwsgi-router-redis -Summary: uWSGI - Plugin for Redis router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-redis -This package contains the redis router plugin for uWSGI - -%package -n uwsgi-router-rewrite -Summary: uWSGI - Plugin for Rewrite router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-rewrite -This package contains the rewrite router plugin for uWSGI - -%package -n uwsgi-router-spnego -Summary: uWSGI - Plugin for SPNEgo router support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-router-spnego -This package contains the spnego router plugin for uWSGI - -%package -n uwsgi-router-ssl -Summary: uWSGI - Plugin for SSL router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Obsoletes: uwsgi-plugin-sslrouter <= 2.0.6 -Provides: uwsgi-plugin-sslrouter = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-ssl -This package contains the SSL router plugin for uWSGI - -%package -n uwsgi-router-static -Summary: uWSGI - Plugin for Static router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-static -This package contains the Static router plugin for uWSGI - -%package -n uwsgi-router-tuntap -Summary: uWSGI - Plugin for TUN/TAP router support -Requires: uwsgi-plugin-common = %{version}-%{release} - -%description -n uwsgi-router-tuntap -This package contains the tuntap router plugin for uWSGI - -%package -n uwsgi-router-uwsgi -Summary: uWSGI - Plugin for uWSGI router support -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-uwsgi -This package contains the uwsgi router plugin for uWSGI - -%package -n uwsgi-router-xmldir -Summary: uWSGI - Plugin for XMLDir router rupport -Requires: uwsgi-plugin-common = %{version}-%{release} -Provides: uwsgi-routers = %{version}-%{release} - -%description -n uwsgi-router-xmldir -This package contains the xmldir router plugin for uWSGI - -# The rest - -%if %{with mod_proxy_uwsgi} -%package -n mod_proxy_uwsgi -Summary: uWSGI - Apache2 proxy module -Requires: uwsgi = %{version}-%{release}, httpd - -%description -n mod_proxy_uwsgi -Fully Apache API compliant proxy module -%endif - - -%prep -%setup -q -cp -p %{SOURCE1} buildconf/ -echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/fedora.ini -cp -p %{SOURCE5} README.Fedora -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%if 0%{?fedora} >= 22 -%patch5 -p1 -%endif -%if %{with v8} && 0%{?fedora} >= 25 -%patch6 -p1 -%endif -%if %{with mono} -%patch7 -p1 -%endif -%patch9 -p1 -%if 0%{?fedora} >= 32 -%patch10 -p1 -%endif -%patch11 -p1 - -#disable plug-ins -%if %{without mongodblibs} -sed -in "s/mongodblog, //" buildconf/fedora.ini -sed -in "s/stats_pusher_mongodb, //" buildconf/fedora.ini -%endif -%if %{without v8} -sed -in "s/v8, //" buildconf/fedora.ini -%endif -%if %{without gridfs} -sed -in "s/gridfs, //" buildconf/fedora.ini -%endif -%if %{without mono} -sed -in "s/mono, //" buildconf/fedora.ini -%endif - -%if %{with perl} && (%{with python3} || %{with python3_other}) -%{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py -%endif - - -%build -CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --build fedora.ini -%if %{with python2} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/python fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gevent fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/tornado fedora -%endif -%if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado -%endif -%if %{with python3_other} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/python fedora python%{python3_other_pkgversion} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent -%endif -%if %{with mongodblibs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongodblog fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora -%endif -%if %{with mono} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mono fedora -%endif -%if %{with v8} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/v8 fedora -%endif -%if %{with go} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gccgo fedora -%endif -%if %{with ruby19} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/fiber fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/rbthreads fedora -%endif -%if %{with systemd} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/systemd_logger fedora -%endif -%if %{with tuntap} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/tuntap fedora -%endif -%if %{with perl} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/psgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/coroae fedora -%endif -%if %{with zeromq} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/logzmq fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongrel2 fedora -%endif -%if %{with python2_greenlet} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora -%endif -%if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet -%endif -%if %{with glusterfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/glusterfs fedora -%endif -%if %{with gridfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gridfs fedora -%endif -%if %{with java} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jvm fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jwsgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/ring fedora -%endif -%if %{with tcp_wrappers} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/router_access fedora -%endif -%if %{with mod_proxy_uwsgi} -%{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c -%endif - - -%install -install -d %{buildroot}%{_sysconfdir}/uwsgi.d -install -d %{buildroot}%{_usrsrc}/uwsgi/%{version} -install -d %{buildroot}%{_includedir}/uwsgi -install -d %{buildroot}%{_libdir}/uwsgi -%if %{without systemd} -install -d -m 0775 %{buildroot}%{_localstatedir}/run/uwsgi -%endif -%if %{with mono} -install -d %{buildroot}%{_monogacdir} -%endif -mkdir docs -tar -C docs/ --strip-components=1 -xvzf %{SOURCE4} -tar -C %{buildroot}%{_usrsrc}/uwsgi/%{version} --strip-components=1 -xvzf %{SOURCE0} -cp %{SOURCE1} %{buildroot}%{_usrsrc}/uwsgi/%{version}/buildconf/ -cp docs/Changelog-%{version}.rst CHANGELOG -rm -f docs/.gitignore -echo "%{commit}, i.e. this:" >> README.Fedora -echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora -install -D -p -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi -install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi -install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi -%if %{with python2} -install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python2_sitelib}/uwsgidecorators.py -%if %{manual_py_compile} == 1 -%py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/uwsgidecorators.py -%endif -%endif -%if %{with python3} -install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py -%if %{manual_py_compile} == 1 -%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/uwsgidecorators.py -%endif -%endif -%if %{with python3_other} -install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py -%if %{manual_py_compile} == 1 -%py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py -%endif -%endif -%if %{with java} -install -D -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir}/uwsgi.jar -%endif -%if %{with mono} -gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib -%endif -install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini -%if %{with systemd} -install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service -install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf -%else -install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi -%endif -%if %{with mod_proxy_uwsgi} -install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so -%endif - - -%pre -getent group uwsgi >/dev/null || groupadd -r uwsgi -getent passwd uwsgi >/dev/null || \ - useradd -r -g uwsgi -d %{!?with_systemd:%{_localstatedir}}/run/uwsgi -s /sbin/nologin \ - -c "uWSGI daemon user" uwsgi -exit 0 - -%post -%if %{with systemd} -echo "Executing systemd post-install tasks" -%if 0%{?systemd_post:1} - %systemd_post uwsgi.service -%else - if [ $1 -eq 1 ] ; then - # Initial installation - /bin/systemctl daemon-reload >/dev/null 2>&1 || : - fi -%endif -%else -echo "Executing System V post-install tasks" -/sbin/chkconfig --add uwsgi -%endif - -%preun -%if %{with systemd} -echo "Executing systemd pre-uninstall tasks" -%if 0%{?systemd_preun:1} - %systemd_preun uwsgi.service -%else - if [ $1 -eq 0 ] ; then - # Package removal, not upgrade - /bin/systemctl --no-reload disable uwsgi.service > /dev/null 2>&1 || : - /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : - fi -%endif -%else -echo "Executing System V pre-uninstall tasks" -if [ $1 -eq 0 ] ; then - /sbin/service uwsgi stop >/dev/null 2>&1 - /sbin/chkconfig --del uwsgi -fi -%endif - -%postun -%if %{with systemd} -echo "Executing systemd post-uninstall tasks" -%if 0%{?systemd_postun:1} - %systemd_postun uwsgi.service -%else - /bin/systemctl daemon-reload >/dev/null 2>&1 || : - if [ $1 -ge 1 ] ; then - # Package upgrade, not uninstall - /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : - fi -%endif -%else -echo "Executing System V post-uninstall tasks" -if [ "$1" -ge "1" ] ; then - /sbin/service uwsgi condrestart >/dev/null 2>&1 || : -fi -%endif - - -%files -%{_sbindir}/uwsgi -%config(noreplace) %{_sysconfdir}/uwsgi.ini -%if %{with systemd} -%{_unitdir}/uwsgi.service -%{_tmpfilesdir}/uwsgi.conf -%else -%{_initddir}/uwsgi -%endif -%dir %{_sysconfdir}/uwsgi.d -%if %{without systemd} -%attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi -%endif -%doc README README.Fedora CHANGELOG -%license LICENSE - -%files -n uwsgi-devel -%{_includedir}/uwsgi -%{_usrsrc}/uwsgi - -%if %{with python2} -%files -n python2-uwsgidecorators -%{python2_sitelib}/uwsgidecorators.py* -%endif - -%if %{with python3} -%files -n python%{python3_pkgversion}-uwsgidecorators -%{python3_sitelib}/uwsgidecorators.py -%{python3_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_version_nodots}*.py* -%endif - -%if %{with python3_other} -%files -n python%{python3_other_pkgversion}-uwsgidecorators -%{python3_other_sitelib}/uwsgidecorators.py -%{python3_other_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_other_version_nodots}*.py* -%endif - -%files -n uwsgi-docs -%doc docs - -%files -n uwsgi-plugin-common -%dir %{_libdir}/uwsgi -%{_libdir}/uwsgi/http_plugin.so -%{_libdir}/uwsgi/cgi_plugin.so - -# Stats pushers - -%files -n uwsgi-stats-pusher-file -%{_libdir}/uwsgi/stats_pusher_file_plugin.so - -%if %{with mongodblibs} -%files -n uwsgi-stats-pusher-mongodb -%{_libdir}/uwsgi/stats_pusher_mongodb_plugin.so -%endif - -%files -n uwsgi-stats-pusher-socket -%{_libdir}/uwsgi/stats_pusher_socket_plugin.so - -%files -n uwsgi-stats-pusher-statsd -%{_libdir}/uwsgi/stats_pusher_statsd_plugin.so - -%files -n uwsgi-stats-pusher-zabbix -%{_libdir}/uwsgi/zabbix_plugin.so - -# Alarms - -%files -n uwsgi-alarm-curl -%{_libdir}/uwsgi/alarm_curl_plugin.so - -%files -n uwsgi-alarm-xmpp -%{_libdir}/uwsgi/alarm_xmpp_plugin.so - -# Transformations - -%files -n uwsgi-transformation-chunked -%{_libdir}/uwsgi/transformation_chunked_plugin.so - -%files -n uwsgi-transformation-gzip -%{_libdir}/uwsgi/transformation_gzip_plugin.so - -%files -n uwsgi-transformation-offload -%{_libdir}/uwsgi/transformation_offload_plugin.so - -%files -n uwsgi-transformation-template -%{_libdir}/uwsgi/transformation_template_plugin.so - -%files -n uwsgi-transformation-tofile -%{_libdir}/uwsgi/transformation_tofile_plugin.so - -%files -n uwsgi-transformation-toupper -%{_libdir}/uwsgi/transformation_toupper_plugin.so - -# Loggers - -%files -n uwsgi-log-encoder-msgpack -%{_libdir}/uwsgi/msgpack_plugin.so - -%files -n uwsgi-logger-crypto -%{_libdir}/uwsgi/logcrypto_plugin.so - -%files -n uwsgi-logger-file -%{_libdir}/uwsgi/logfile_plugin.so - -%files -n uwsgi-logger-graylog2 -%{_libdir}/uwsgi/graylog2_plugin.so - -%if %{with mongodblibs} -%files -n uwsgi-logger-mongodb -%{_libdir}/uwsgi/mongodblog_plugin.so -%endif - -%files -n uwsgi-logger-pipe -%{_libdir}/uwsgi/logpipe_plugin.so - -%files -n uwsgi-logger-redis -%{_libdir}/uwsgi/redislog_plugin.so - -%files -n uwsgi-logger-rsyslog -%{_libdir}/uwsgi/rsyslog_plugin.so - -%files -n uwsgi-logger-socket -%{_libdir}/uwsgi/logsocket_plugin.so - -%files -n uwsgi-logger-syslog -%{_libdir}/uwsgi/syslog_plugin.so - -%if %{with systemd} -%files -n uwsgi-logger-systemd -%{_libdir}/uwsgi/systemd_logger_plugin.so -%endif - -%if %{with zeromq} -%files -n uwsgi-logger-zeromq -%{_libdir}/uwsgi/logzmq_plugin.so -%endif - -# Plugins - -%files -n uwsgi-plugin-airbrake -%{_libdir}/uwsgi/airbrake_plugin.so - -%files -n uwsgi-plugin-cache -%{_libdir}/uwsgi/cache_plugin.so - -%files -n uwsgi-plugin-carbon -%{_libdir}/uwsgi/carbon_plugin.so - -%if %{with perl} -%files -n uwsgi-plugin-psgi -%{_libdir}/uwsgi/psgi_plugin.so - -%files -n uwsgi-plugin-coroae -%{_libdir}/uwsgi/coroae_plugin.so -%endif - -%files -n uwsgi-plugin-cheaper-busyness -%{_libdir}/uwsgi/cheaper_busyness_plugin.so - -%files -n uwsgi-plugin-cplusplus -%{_libdir}/uwsgi/cplusplus_plugin.so - -%files -n uwsgi-plugin-curl-cron -%{_libdir}/uwsgi/curl_cron_plugin.so - -%files -n uwsgi-plugin-dumbloop -%{_libdir}/uwsgi/dumbloop_plugin.so - -%files -n uwsgi-plugin-dummy -%{_libdir}/uwsgi/dummy_plugin.so - -%if %{with ruby19} -%files -n uwsgi-plugin-fiber -%{_libdir}/uwsgi/fiber_plugin.so -%endif - -%if %{with go} -%files -n uwsgi-plugin-gccgo -%{_libdir}/uwsgi/gccgo_plugin.so -%endif - -%files -n uwsgi-plugin-geoip -%{_libdir}/uwsgi/geoip_plugin.so - -%if %{with python2} -%files -n uwsgi-plugin-python2-gevent -%{_libdir}/uwsgi/gevent_plugin.so -%endif - -%if %{with python3} -%files -n uwsgi-plugin-python%{python3_pkgversion}-gevent -%{_libdir}/uwsgi/python%{python3_pkgversion}_gevent_plugin.so -%endif - -%if %{with python3_other} -%files -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent -%{_libdir}/uwsgi/python%{python3_other_pkgversion}_gevent_plugin.so -%endif - -%if %{with glusterfs} -%files -n uwsgi-plugin-glusterfs -%{_libdir}/uwsgi/glusterfs_plugin.so -%endif - -%if %{with python2_greenlet} -%files -n uwsgi-plugin-python2-greenlet -%{_libdir}/uwsgi/greenlet_plugin.so -%endif - -%if %{with python3} -%files -n uwsgi-plugin-python%{python3_pkgversion}-greenlet -%{_libdir}/uwsgi/python%{python3_pkgversion}_greenlet_plugin.so -%endif - -%if %{with gridfs} -%files -n uwsgi-plugin-gridfs -%{_libdir}/uwsgi/gridfs_plugin.so -%endif - -%if %{with java} -%files -n uwsgi-plugin-jvm -%{_libdir}/uwsgi/jvm_plugin.so -%{_javadir}/uwsgi.jar - -%files -n uwsgi-plugin-jwsgi -%{_libdir}/uwsgi/jwsgi_plugin.so -%endif - -%files -n uwsgi-plugin-ldap -%{_libdir}/uwsgi/ldap_plugin.so - -%files -n uwsgi-plugin-lua -%{_libdir}/uwsgi/lua_plugin.so - -%if %{with zeromq} -%files -n uwsgi-plugin-mongrel2 -%{_libdir}/uwsgi/mongrel2_plugin.so -%endif - -%if %{with mono} -%files -n uwsgi-plugin-mono -%{_libdir}/uwsgi/mono_plugin.so -%{_monodir}/uwsgi/ -%{_monogacdir}/uwsgi/ -%endif - -%files -n uwsgi-plugin-nagios -%{_libdir}/uwsgi/nagios_plugin.so - -%files -n uwsgi-plugin-notfound -%{_libdir}/uwsgi/notfound_plugin.so - -%files -n uwsgi-plugin-pam -%{_libdir}/uwsgi/pam_plugin.so - -%files -n uwsgi-plugin-php -%{_libdir}/uwsgi/php_plugin.so - -%files -n uwsgi-plugin-pty -%{_libdir}/uwsgi/pty_plugin.so - -%if %{with python2} -%files -n uwsgi-plugin-python2 -%{_libdir}/uwsgi/python_plugin.so -%endif - -%if %{with python3} -%files -n uwsgi-plugin-python%{python3_pkgversion} -%{_libdir}/uwsgi/python%{python3_pkgversion}_plugin.so -%endif - -%if %{with python3_other} -%files -n uwsgi-plugin-python%{python3_other_pkgversion} -%{_libdir}/uwsgi/python%{python3_other_pkgversion}_plugin.so -%endif - -%files -n uwsgi-plugin-rack -%{_libdir}/uwsgi/rack_plugin.so - -%if %{with ruby19} -%files -n uwsgi-plugin-rbthreads -%{_libdir}/uwsgi/rbthreads_plugin.so -%endif - -%if %{with java} -%files -n uwsgi-plugin-ring -%{_libdir}/uwsgi/ring_plugin.so -%endif - -%files -n uwsgi-plugin-rrdtool -%{_libdir}/uwsgi/rrdtool_plugin.so - -%files -n uwsgi-plugin-rpc -%{_libdir}/uwsgi/rpc_plugin.so - -%files -n uwsgi-plugin-ruby -%{_libdir}/uwsgi/ruby19_plugin.so - -%files -n uwsgi-plugin-spooler -%{_libdir}/uwsgi/spooler_plugin.so - -%files -n uwsgi-plugin-sqlite3 -%{_libdir}/uwsgi/sqlite3_plugin.so - -%files -n uwsgi-plugin-ssi -%{_libdir}/uwsgi/ssi_plugin.so - -%if %{with python2} -%files -n uwsgi-plugin-python2-tornado -%{_libdir}/uwsgi/tornado_plugin.so -%endif - -%if %{with python3} -%files -n uwsgi-plugin-python%{python3_pkgversion}-tornado -%{_libdir}/uwsgi/python%{python3_pkgversion}_tornado_plugin.so -%endif - -%files -n uwsgi-plugin-ugreen -%{_libdir}/uwsgi/ugreen_plugin.so - -%if %{with v8} -%files -n uwsgi-plugin-v8 -%{_libdir}/uwsgi/v8_plugin.so -%endif - -%files -n uwsgi-plugin-webdav -%{_libdir}/uwsgi/webdav_plugin.so - -%files -n uwsgi-plugin-xattr -%{_libdir}/uwsgi/xattr_plugin.so - -%files -n uwsgi-plugin-xslt -%{_libdir}/uwsgi/xslt_plugin.so - -%files -n uwsgi-plugin-zergpool -%{_libdir}/uwsgi/zergpool_plugin.so - -# Routers - -%if %{with tcp_wrappers} -%files -n uwsgi-router-access -%{_libdir}/uwsgi/router_access_plugin.so -%endif - -%files -n uwsgi-router-basicauth -%{_libdir}/uwsgi/router_basicauth_plugin.so - -%files -n uwsgi-router-cache -%{_libdir}/uwsgi/router_cache_plugin.so - -%files -n uwsgi-router-expires -%{_libdir}/uwsgi/router_expires_plugin.so - -%files -n uwsgi-router-fast -%{_libdir}/uwsgi/fastrouter_plugin.so - -%files -n uwsgi-router-forkpty -%{_libdir}/uwsgi/forkptyrouter_plugin.so - -%files -n uwsgi-router-hash -%{_libdir}/uwsgi/router_hash_plugin.so - -%files -n uwsgi-router-http -%{_libdir}/uwsgi/router_http_plugin.so - -%files -n uwsgi-router-memcached -%{_libdir}/uwsgi/router_memcached_plugin.so - -%files -n uwsgi-router-metrics -%{_libdir}/uwsgi/router_metrics_plugin.so - -%files -n uwsgi-router-radius -%{_libdir}/uwsgi/router_radius_plugin.so - -%files -n uwsgi-router-raw -%{_libdir}/uwsgi/rawrouter_plugin.so - -%files -n uwsgi-router-redirect -%{_libdir}/uwsgi/router_redirect_plugin.so - -%files -n uwsgi-router-redis -%{_libdir}/uwsgi/router_redis_plugin.so - -%files -n uwsgi-router-rewrite -%{_libdir}/uwsgi/router_rewrite_plugin.so - -%files -n uwsgi-router-spnego -%{_libdir}/uwsgi/router_spnego_plugin.so - -%files -n uwsgi-router-ssl -%{_libdir}/uwsgi/sslrouter_plugin.so - -%files -n uwsgi-router-static -%{_libdir}/uwsgi/router_static_plugin.so - -%if %{with tuntap} -%files -n uwsgi-router-tuntap -%{_libdir}/uwsgi/tuntap_plugin.so -%endif - -%files -n uwsgi-router-uwsgi -%{_libdir}/uwsgi/router_uwsgi_plugin.so - -%files -n uwsgi-router-xmldir -%{_libdir}/uwsgi/router_xmldir_plugin.so - -# The rest - -%if %{with mod_proxy_uwsgi} -%files -n mod_proxy_uwsgi -%{_httpd_moddir}/mod_proxy_uwsgi.so -%endif - - -%changelog -* Fri Jun 04 2021 Python Maint - 2.0.18-18 -- Rebuilt for Python 3.10 - -* Fri May 21 2021 Jitka Plesnikova - 2.0.18-17 -- Perl 5.34 rebuild - -* Wed Jan 27 2021 Fedora Release Engineering - 2.0.18-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jan 06 2021 Mamoru TASAKA - 2.0.18-15 -- F-34: rebuild against ruby 3.0 - -* Tue Sep 15 2020 Miro Hrončok - 2.0.18-14 -- Rebuilt for libevent soname change - -* Sat Aug 01 2020 Fedora Release Engineering - 2.0.18-13 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 2.0.18-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Thu Jun 25 2020 Jitka Plesnikova - 2.0.18-11 -- Perl 5.32 rebuild - -* Sun May 31 2020 Björn Esser - 2.0.18-10 -- Rebuild (gloox) - -* Tue May 26 2020 Miro Hrončok - 2.0.18-9 -- Rebuilt for Python 3.9 - -* Tue May 12 2020 Jorge A Gallegos - 2.0.18-8 -- Patching PHP plugin to fix Zend framework - -* Mon Apr 27 2020 Jorge A Gallegos - 2.0.18-7 -- Re-introducing tmpfiles.d (Jorge Gallegos) - -* Tue Apr 07 2020 Jorge A Gallegos - 2.0.18-6 -- change mkdirs for install -d (Jorge Gallegos) -- Fix python plugins provides BZ 1628147 (Jorge Gallegos) -- Add a fix for psgi + GCC10 BZ 1794335 (Jorge Gallegos) -- Move path options outside main config BZ 1687403 (Jorge Gallegos) - -* Fri Jan 31 2020 Fedora Release Engineering - 2.0.18-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Sat Jan 18 2020 Mamoru TASAKA - 2.0.18-4 -- F-32: rebuild against ruby27 - -* Mon Aug 19 2019 Miro Hrončok - 2.0.18-3 -- Rebuilt for Python 3.8 - -* Sat Jul 27 2019 Fedora Release Engineering - 2.0.18-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Wed Jun 19 2019 Carl George - 2.0.18-1 -- Latest upstream -- Use openssl everywhere, instead of compat-openssl10 on F26+ -- Disable python2 subpackages on F31+ - -* Fri May 31 2019 Jitka Plesnikova - 2.0.17.1-12 -- Perl 5.30 rebuild - -* Wed Apr 03 2019 Carl George - 2.0.17.1-11 -- Re-enable mono plugins on ppc64le - -* Tue Mar 26 2019 Carl George - 2.0.17.1-10 -- Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) -- Disable v8 plugin on Fedora due to v8-314 retirement -- Disable mongo plugins on Fedora due to mongo-cxx-driver-legacy being broken in rawhide -- Disable mono plugins on ppc64le because mono-4.8.0-17 dropped that arch rhbz#1686983 - -* Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 -- rebuild for libargon2 new soname - -* Sun Feb 03 2019 Fedora Release Engineering - 2.0.17.1-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Mon Jan 21 2019 Mamoru TASAKA - 2.0.17.1-7 -- F-30: rebuild against ruby26 - -* Mon Jan 14 2019 Björn Esser - 2.0.17.1-6 -- Rebuilt for libcrypt.so.2 (#1666033) - -* Fri Nov 02 2018 Carl George - 2.0.17.1-5 -- Don't build python2-uwsgidecorators on F30+ -- BuildRequire mongo-cxx-driver-legacy-devel on F30+ - -* Wed Sep 12 2018 Carl George - 2.0.17.1-4 -- Drop mod_proxy_uwsgi subpackage on Fedora, as this module now provided by httpd rhbz#1574335 - -* Sat Jul 14 2018 Tadej Janež - 2.0.17.1-3 -- Re-enable greenlet plugin on EL7: - - Python 3 version is always built - - Python 2 version is only built on x86_64 - -* Thu Jul 12 2018 Carl George - 2.0.17.1-2 -- Make python2-uwsgidecorators own the right files (rhbz#1600721) -- Be more explicit with uwsgidecorators files -- Rebuilt to change main python from 3.4 to 3.6 - -* Mon Jul 09 2018 Carl George - 2.0.17.1-1 -- Latest upstream (rhbz#1549354) -- Enable uwsgi-plugin-coroae on EL7 -- Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) -- Use /var/run/uwsgi when not using systemd -- Build with versioned python command -- Remove %%config from systemd unit file -- Disable greenlet plugin on EL7 - -* Tue Jul 03 2018 Petr Pisar - 2.0.16-7 -- Perl 5.28 rebuild - -* Fri Jun 29 2018 Jitka Plesnikova - 2.0.16-6 -- Perl 5.28 rebuild - -* Wed Jun 27 2018 Tadej Janež - 2.0.16-5 -- Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 -- Build Python 3 version of greenlet plugin on Fedora and EPEL7 -- Build Python 2 version of greenlet plugin on EPEL7 -- Always build Python 3 version of tornado plugin when building with Python 3 - (drop python3_tornado build conditional) - -* Tue Jun 26 2018 Tadej Janež - 2.0.16-4 -- Modernize and generalize building of Python subpackages: - - replace python with python2 - - use appropriate macros for when refering to Python 3 - - prefix Python-dependent plugins with the version of Python they are built - with -- Also build Python 3 subpackages for the other Python 3 version in EPEL7 - -* Tue Jun 19 2018 Miro Hrončok - 2.0.16-3 -- Rebuilt for Python 3.7 - -* Tue Apr 03 2018 Till Maas - 2.0.16-2 -- Fix building in Rawhide (#1556525) (Jakub Jelen) -- Disable tcp_wrappers for Fedora 28 and newer (Jakub Jelen) - -* Tue Feb 13 2018 Jorge A Gallegos - 2.0.16-1 -- Conditionally disable router-access for tcp_wrappers deprecation (Jorge Gallegos) -- Updated to 2.0.16 which includes fix for CVE-2018-6758 (Jorge Gallegos) - -* Fri Feb 09 2018 Fedora Release Engineering - 2.0.15-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sat Jan 20 2018 Björn Esser - 2.0.15-8 -- Rebuilt for switch to libxcrypt - -* Tue Oct 03 2017 Remi Collet - 2.0.15-7 -- rebuild for https://fedoraproject.org/wiki/Changes/php72 - -* Thu Aug 03 2017 Fedora Release Engineering - 2.0.15-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 2.0.15-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Jul 21 2017 Kalev Lember - 2.0.15-4 -- Rebuilt for Boost 1.64 - -* Fri Jul 07 2017 Igor Gnatenko - 2.0.15-3 -- Rebuild due to bug in RPM (RHBZ #1468476) - -* Sun Jun 04 2017 Jitka Plesnikova - 2.0.15-2 -- Perl 5.26 rebuild - -* Thu May 18 2017 Jorge A Gallegos - 2.0.15-1 -- Bumping release to 2.0.15 (Jorge Gallegos) -- Updating sources to 2.0.15 (Jorge Gallegos) - -* Mon Mar 20 2017 Carl George - 2.0.14-11 -- Add patch7 to add glib-2.0 pkg-config flags to mono build -- Filter uwgi plugins from automatic provides rhbz#1352089 - -* Wed Feb 15 2017 Igor Gnatenko - 2.0.14-10 -- Rebuild for brp-python-bytecompile - -* Wed Feb 08 2017 Carl George - 2.0.14-9 -- Rebuild for boost soname bump - -* Sun Feb 05 2017 Kalev Lember - 2.0.14-8 -- Rebuilt for libgo soname bump - -* Sun Jan 15 2017 Mamoru TASAKA - 2.0.14-7 -- Workaround for build issue on arm(32): explicitly write - java-1.8.0-openjdk-headless as BR not to use java-1.8.0-openjdk-aarch32 - which does not provide server/libjvm.so - -* Fri Jan 13 2017 Jorge A Gallegos - 2.0.14-6 -- Adding the cheaper_busyness plugin (Jorge Gallegos) -- Got tired of this giant string (Jorge Gallegos) - -* Fri Jan 13 2017 Mamoru TASAKA - 2.0.14-5 -- F-26: rebuild for ruby24 - -* Thu Dec 22 2016 Miro Hrončok - 2.0.14-4 -- Rebuild for Python 3.6 - -* Tue Dec 20 2016 Carl George - 2.0.14-3 -- Enable plugin-psgi on EL7 - -* Wed Nov 30 2016 Carl George - 2.0.14-2 -- uwsgi is not yet OpenSSL 1.1 compatible, build against compat-openssl10 on F26+ (Carl George) -- php plugin requires krb5 headers to build (Carl George) - -* Wed Oct 05 2016 Jorge A Gallegos - 2.0.14-1 -- Updated to latest upstream stable (Jorge Gallegos) -- Make subpackage interdependencies versioned for bz #1368488 (Jorge Gallegos) -- chmod uwsgi sock file for bz #1338038 (Jorge Gallegos) -- greenlet and gevent depend on python bz #1325524 (Jorge Gallegos) -- config(noreplace) for uwsgi.ini bz #1339558 (Jorge Gallegos) - -* Mon Aug 01 2016 Carl George - 2.0.13.1-2 -- Build against v8-314 on F25+ rhbz#1339293 -- Own /usr/src/uwsgi rhbz#1351796 - -* Thu Jul 28 2016 Jorge A Gallegos - 2.0.13.1-1 -- Bumped to latest stable - -* Tue Jul 19 2016 Fedora Release Engineering - 2.0.12-9 -- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages - -* Tue May 17 2016 Jitka Plesnikova - 2.0.12-8 -- Perl 5.24 rebuild - -* Tue Apr 12 2016 Peter Robinson 2.0.12-7 -- Mongodb doesn't depend on v8 anymore so is now supported on all LE arches - -* Fri Feb 05 2016 Fedora Release Engineering - 2.0.12-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jan 29 2016 Jonathan Wakely - 2.0.12-5 -- Rebuilt for Boost 1.60 - -* Wed Jan 13 2016 Vít Ondruch - 2.0.12-4 -- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3 - -* Thu Jan 07 2016 Jorge A Gallegos - 2.0.12-3 -- Really fixing stats_pusher_mongodb (Jorge Gallegos) - -* Sat Jan 02 2016 Jorge A Gallegos - 2.0.12-2 -- Trying again with GCC - -* Thu Dec 31 2015 Jorge A Gallegos - 2.0.12-1 -- Adding the build profile to -devel subpackage (Jorge Gallegos) -- Fixing stats-pusher-mongo for gnu++11 (Jorge Gallegos) -- Using _mono macros instead of hardcoded paths (Jorge Gallegos) -- Modifying an old changelog entry for rpmlint (Jorge Gallegos) -- Making -devel not pull unnecessary deps (Jorge Gallegos) -- Adjusting rpath patch for new release (Jorge Gallegos) -- Updating to latest stable version 2.0.12 (Jorge Gallegos) - -* Fri Dec 11 2015 Ville Skyttä - 2.0.11.2-7 -- Don't build tornado3 for EL7 (no python3-tornado available yet) -- Fix EL7 ppc64le build - -* Sun Dec 6 2015 Peter Robinson 2.0.11.2-6 -- Fixing glusterfs for non x86_64 on el7 - -* Thu Nov 19 2015 Jorge A Gallegos - 2.0.11.2-5 -- Fixing manual brp-compiling in el6 - -* Wed Nov 18 2015 Jorge A Gallegos - 2.0.11.2-4 -- Fixing glusterfs for ppc64 - -* Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 -- Fixing bz #1247395 - python3 plugin for epel7 -- Fixing bz #1261942 - daemonize properly in SystemV -- Fixing bz #1258388 - package uwsgidecorators -- Fixing bz #1242155 - glusterfs plugin for epel7 -- Fixing bz #1240236 - add source to -devel subpackage - -* Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 - -* Fri Nov 06 2015 Jorge A Gallegos - 2.0.11.2-1 -- With latest stable - -* Fri Aug 28 2015 Jonathan Wakely - 2.0.11.1-4 -- Rebuilt for Boost 1.59 - -* Wed Jul 29 2015 Fedora Release Engineering - 2.0.11.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 - -* Wed Jul 22 2015 David Tardon - 2.0.11.1-2 -- rebuild for Boost 1.58 - -* Tue Jul 21 2015 Jorge A Gallegos - 2.0.11.1-1 -- New emergency security release - -* Thu Jul 02 2015 Jorge A Gallegos - 2.0.11-1 -- Adding the dummy and notfound plugins (Jorge Gallegos) -- License is license (Jorge Gallegos) -- Mark config files as config (Jorge Gallegos) -- Adding sources for new version (Jorge Gallegos) -- uwsgi_fix_glibc_compatibility merged upstream (Jorge Gallegos) - -* Tue Jun 23 2015 Thomas Spura - 2.0.9-11 -- rebuilt for new zeromq 4.1.2 - -* Fri Jun 19 2015 Fedora Release Engineering - 2.0.9-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sat Jun 06 2015 Jitka Plesnikova - 2.0.9-9 -- Perl 5.22 rebuild - -* Mon May 18 2015 Peter Robinson 2.0.9-8 -- Rebuild (mono4) - -* Thu Apr 23 2015 Jorge A Gallegos - 2.0.9-7 -- Disabled java related plugins (jvm, jwsgi, ring) in el6 ppc64 - -* Tue Apr 21 2015 Jorge A Gallegos - 2.0.9-6 -- Reworked the conditionals in the spec file -- Updated documentation -- Disabled PSGI for epel, builds fine but requirement is missing -- Reenabled systemd for epel7, dunno how I missed that one - -* Fri Apr 17 2015 Dan Horák - 2.0.9-5 -- conditionalize various subpackages depending on architectures (patch by Jakub Cajka) - #1211616 - -* Tue Apr 14 2015 Vít Ondruch - 2.0.9-4 -- Fix glibc and MongoDB compatibility. - -* Fri Mar 13 2015 Jorge A Gallegos - 2.0.9-3 -- Adding missing dist tag, have no clue at what point this got dropped :( - -* Thu Mar 12 2015 Jorge A Gallegos - 2.0.9-2 -- Making it arch specific due to missing dependencies in PPC (as per - https://fedoraproject.org/wiki/Packaging:Guidelines#BuildRequires) - -* Wed Mar 11 2015 Jorge A Gallegos - 2.0.9-1 -- EPEL 6 and EPEL 7 compatible -- Plugins not compatible with epel 6 are systemd, go, python3 based, ruby19 based, gridfs and tuntap -- Plugins not compatible with epel 7 are python3 based, zeromq, greenlet, coroae, glusterfs and gridfs - -* Fri Feb 27 2015 Jorge A Gallegos - 2.0.9-0 -- New version - -* Fri Jan 16 2015 Mamoru TASAKA - 2.0.7-3 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_2.2 - -* Thu Sep 18 2014 Jorge A Gallegos - 2.0.7-2 -- -plugin-http doesn't exist, is in -plugin-common (Jorge Gallegos) - -* Mon Sep 08 2014 Jorge A Gallegos - 2.0.7-1 -- I am just done now, and there's a new version out already. Go figure. - -* Sun Sep 07 2014 Jorge A Gallegos - 2.0.6-1 -- Adding -stats-pusher-zabbix (Jorge Gallegos) -- Adding -plugin-xslt (Jorge Gallegos) -- Adding -plugin-webdav (Jorge Gallegos) -- Adding -plugin-v8 (Jorge Gallegos) -- Adding -router-tuntap (Jorge Gallegos) -- Adding http transformation plugins (Jorge Gallegos) -- Adding -plugin-tornado and -plugin-tornado3 (Jorge Gallegos) -- Adding all -stats-pusher-* plugins (Jorge Gallegos) -- Adding -plugin-ssi (Jorge Gallegos) -- Adding -plugin-ldap (Jorge Gallegos) -- Adding -plugin-sqlite3 (Jorge Gallegos) -- Adding -plugin-spooler (Jorge Gallegos) -- Adding -plugin-jwsgi (Jorge Gallegos) -- Adding -plugin-ring (Jorge Gallegos) -- Adding -plugin-rbthreads (Jorge Gallegos) -- Adding -plugin-pty (Jorge Gallegos) -- Adding -log-encoder-msgpack (Jorge Gallegos) -- Adding -plugin-mono (Jorge Gallegos) -- Adding -plugin-mongrel2 (Jorge Gallegos) -- Adding -plugin-gridfs (Jorge Gallegos) -- Adding -logger-graylog2 (Jorge Gallegos) -- Adding -plugin-glusterfs (Jorge Gallegos) -- Adding -plugin-gevent (Jorge Gallegos) -- Adding -plugin-geoip (Jorge Gallegos) -- Adding -plugin-gccgo (Jorge Gallegos) -- Adding -plugin-fiber (Jorge Gallegos) -- Adding -plugin-dumbloop (Jorge Gallegos) -- Adding -plugin-curl-cron (Jorge Gallegos) -- Adding -plugin-cplusplus (Jorge Gallegos) -- Adding -plugin-coroae (Jorge Gallegos) -- Adding -alarm-xmpp (Jorge Gallegos) -- Adding -alarm-curl (Jorge Gallegos) -- Packaging -plugin-airbrake (Jorge Gallegos) -- Broke up -routers into its individual -router-* (Jorge Gallegos) -- Renaming -plugin-sslrouter to -router-ssl (Jorge Gallegos) -- Renaming -plugin-rawrouter to -router-raw (Jorge Gallegos) -- Splitting off the documentation to its subpackage (Jorge Gallegos) -- Splitting off some non-essential embedded plugins: (Jorge Gallegos) -- Splitting off -logger-syslog (Jorge Gallegos) -- Splitting off -logger-rsyslog (Jorge Gallegos) -- Splitting off -logger-redis (Jorge Gallegos) -- Splitting off -logger-mongodb (Jorge Gallegos) -- Splitting off -logger-socket (Jorge Gallegos) -- Splitting off -logger-file (Jorge Gallegos) -- Splitting off -logger-pipe (Jorge Gallegos) -- Splitting off -logger-crypto instead (Jorge Gallegos) -- Break out the major/minor/release numbers properly (Jorge Gallegos) -- Reorganized spec, alphabetical and type (Jorge Gallegos) -- Splitting -router-fastrouter out of -common (Jorge Gallegos) -- Splitting out the README, I will be putting more stuff in here (Jorge Gallegos) -- Adding -logger-systemd plugin (Jorge Gallegos) -- Adding -logger-zeromq plugin (Jorge Gallegos) -- Adding new sources for newest stable (Jorge Gallegos) - -* Mon Aug 18 2014 Fedora Release Engineering - 1.9.19-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Thu Jun 19 2014 Remi Collet - 1.9.19-5 -- rebuild for https://fedoraproject.org/wiki/Changes/Php56 - -* Sun Jun 08 2014 Fedora Release Engineering - 1.9.19-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Wed May 28 2014 Kalev Lember - 1.9.19-3 -- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 - -* Tue Apr 29 2014 Vít Ondruch - 1.9.19-2 -- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1 - -* Tue Nov 12 2013 Jorge A Gallegos - 1.9.19-1 -- Updating to latest stable, uploading new sources (Jorge Gallegos) -- Forgot to delete the jvm arm patch file (Jorge Gallegos) - -* Sun Oct 20 2013 Jorge A Gallegos - 1.9.18.2-1 -- The changelog entry must match major + minor (Jorge Gallegos) -- Adding more ignore entries (Jorge Gallegos) -- The jvm arm patch has been merged upstream (Jorge Gallegos) -- Updated license to 'GPLv2 with exceptions' (Jorge Gallegos) -- Ugh messed up the doc sha (Jorge Gallegos) -- Adding new sources, bumping up spec to 1.9.18.2 (Jorge Gallegos) - -* Sat Oct 19 2013 Jorge A Gallegos - 1.9.18.2-0 -- Breaking up full version in 3 parts (Jorge Gallegos) -- Update to latest stable 1.9.18.2 (Jorge Gallegos) -- Forgot to disable debug mode (Jorge Gallegos) - -* Wed Oct 09 2013 Jorge A Gallegos - 1.9.17-2 -- Uploaded new sources per spec rework (Jorge Gallegos) -- Adding more router plugins (Jorge Gallegos) -- Adding mod_proxy_uwsgi apache module (Jorge Gallegos) -- Complying with the guidelines for source urls (Jorge Gallegos) -- The settings in the service file were right before (Jorge Gallegos) -- Enabling stats log socket, and capabilities (Jorge Gallegos) - -* Thu Oct 03 2013 Jorge A Gallegos - 1.9.17-1 -- Copying the version changelog to top-level doc -- Compile with POSIX capabilities -- Embed the loggers into the binary itself, no need for an extra package -- Patching jvm plugin to support arm - -* Wed Oct 02 2013 Jorge A Gallegos - 1.9.17-0 -- Rebuilt for version 1.9.17 -- Pulling in new documentation from https://github.com/unbit/uwsgi-docs - -* Sun Aug 04 2013 Fedora Release Engineering - 1.9.8-1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Tue Apr 23 2013 Jorge A Gallegos - 1.9.8-0 -- Rebuilt with latest stable version from upstream - -* Thu Apr 11 2013 Jorge A Gallegos - 1.9.5-0 -- Rebuilt with latest stable version from upstream -- Added Erlang, PAM and JVM plugins -- Added router-related plugins -- Added logger plugins - -* Tue Apr 02 2013 Vít Ondruch - 1.2.6-10 -- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 - -* Sat Mar 23 2013 Remi Collet - 1.2.6-9 -- rebuild for http://fedoraproject.org/wiki/Features/Php55 - -* Fri Feb 15 2013 Fedora Release Engineering - 1.2.6-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Thu Feb 14 2013 Jorge A Gallegos - 1.2.6-7 -- Tyrant mode shouldn't be used here, tyrant mode is root-only - -* Thu Dec 27 2012 Jorge A Gallegos - 1.2.6-6 -- Systemd now supports an exit status directive, fixing bugz 873382 - -* Fri Nov 9 2012 Remi Collet - 1.2.6-5 -- rebuild against new php embedded library soname (5.4) - -* Thu Oct 18 2012 Remi Collet - 1.2.6-4 -- rebuild for new PHP 5.4.8 - -* Wed Sep 19 2012 Jorge A Gallegos - 1.2.6-3 -- Dropped requirement on PHP for the PHP plugin - -* Sat Sep 15 2012 Jorge A Gallegos - 1.2.6-2 -- Rebuilt with new systemd macros - -* Sun Sep 09 2012 Jorge A Gallegos - 1.2.6-1 -- Updated to latest stable from upstream - -* Sat Aug 04 2012 David Malcolm - 1.2.4-4 -- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 - -* Sun Jul 22 2012 Fedora Release Engineering - 1.2.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Sun Jul 08 2012 Jorge A Gallegos - 1.2.4-1 -- Updated to latest stable from upstream - -* Tue Jun 26 2012 Jorge A Gallegos - 1.2.3-1 -- Updated to latest stable upstream -- Building the pytho3 plugin is a bit trickier now, but still possible -- Added PHP plugin -- Added Carbon plugin -- Added RRDTool plugin -- Added rsyslog plugin -- Added syslog plugin - -* Sun Feb 19 2012 Jorge A Gallegos - 1.0.4-1 -- Addressing issues from package review feedback -- s/python-devel/python2-devel -- Make the libdir subdir owned by -plugins-common -- Upgraded to latest stable upstream version - -* Mon Feb 06 2012 Jorge A Gallegos - 1.0.2.1-2 -- Fixing 'unstripped-binary-or-object' - -* Thu Jan 19 2012 Jorge A Gallegos - 1.0.2.1-1 -- New upstream version - -* Thu Dec 08 2011 Jorge A Gallegos - 0.9.9.3-1 -- New upstream version - -* Sun Oct 09 2011 Jorge A Gallegos - 0.9.9.2-2 -- Don't download the wiki page at build time - -* Sun Oct 09 2011 Jorge A Gallegos - 0.9.9.2-1 -- Updated to latest stable version -- Correctly linking plugin_dir -- Patches 1 and 2 were addressed upstream - -* Sun Aug 21 2011 Jorge A Gallegos - 0.9.8.3-3 -- Got rid of BuildRoot -- Got rid of defattr() - -* Sun Aug 14 2011 Jorge Gallegos - 0.9.8.3-2 -- Added uwsgi_fix_rpath.patch -- Backported json_loads patch to work with jansson 1.x and 2.x -- Deleted clean steps since they are not needed in fedora - -* Sun Jul 24 2011 Jorge Gallegos - 0.9.8.3-1 -- rebuilt -- Upgraded to latest stable version 0.9.8.3 -- Split packages - -* Sun Jul 17 2011 Jorge Gallegos - 0.9.6.8-2 -- Heavily modified based on Oskari's work - -* Mon Feb 28 2011 Oskari Saarenmaa - 0.9.6.8-1 -- Initial. diff --git a/uwsgi.tmpfiles b/uwsgi.tmpfiles deleted file mode 100644 index 293cea5..0000000 --- a/uwsgi.tmpfiles +++ /dev/null @@ -1 +0,0 @@ -d /run/uwsgi 0775 uwsgi uwsgi diff --git a/uwsgi_fix_lua.patch b/uwsgi_fix_lua.patch deleted file mode 100644 index e2ef54d..0000000 --- a/uwsgi_fix_lua.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/plugins/lua/uwsgiplugin.py b/plugins/lua/uwsgiplugin.py -index 8aaa95b..d0e3cd0 100644 ---- a/plugins/lua/uwsgiplugin.py -+++ b/plugins/lua/uwsgiplugin.py -@@ -3,7 +3,7 @@ import os,sys - LUAINC = os.environ.get('UWSGICONFIG_LUAINC') - LUALIB = os.environ.get('UWSGICONFIG_LUALIB') - LUALIBPATH = os.environ.get('UWSGICONFIG_LUALIBPATH') --LUAPC = os.environ.get('UWSGICONFIG_LUAPC', 'lua5.1') -+LUAPC = os.environ.get('UWSGICONFIG_LUAPC', 'lua') - - # we LUAINC/LUALIB/LUALIBPATH override the LUAPC for backwards compat - if LUAINC: -@@ -12,7 +12,7 @@ else: - try: - CFLAGS = os.popen('pkg-config --cflags %s' % LUAPC).read().rstrip().split() - except: -- CFLAGS = ['-I/usr/include/lua5.1'] -+ CFLAGS = ['-I/usr/include/lua'] - - if LUALIB: - LIBS = ['-l%s' % LUALIB] -@@ -20,7 +20,7 @@ else: - try: - LIBS = os.popen('pkg-config --libs %s' % LUAPC).read().rstrip().split() - except: -- LIBS = ['-llua5.1'] -+ LIBS = ['-llua'] - - if LUALIBPATH: - LDFLAGS = ['-L%s' % LUALIBPATH] diff --git a/uwsgi_fix_mongodb.patch b/uwsgi_fix_mongodb.patch deleted file mode 100644 index 8b7b366..0000000 --- a/uwsgi_fix_mongodb.patch +++ /dev/null @@ -1,269 +0,0 @@ -From 83752e472c35632174534763dffd312fc120a429 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= - =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= - -Date: Fri, 10 Apr 2015 22:56:59 +0400 -Subject: [PATCH 1/3] Updated GridFS plugin to work with legacy - mongo-cxx-driver version 1.0.0 - ---- - plugins/gridfs/gridfs.cc | 53 +++++++++++++++++++++++++++++++++---------- - plugins/gridfs/uwsgiplugin.py | 7 +++--- - 2 files changed, 45 insertions(+), 15 deletions(-) - -diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc -index d11451a..81ff0d9 100644 ---- a/plugins/gridfs/gridfs.cc -+++ b/plugins/gridfs/gridfs.cc -@@ -1,3 +1,7 @@ -+#include -+#include -+#include -+ - #include - - #include -@@ -7,6 +11,7 @@ struct uwsgi_gridfs_mountpoint { - char *mountpoint; - uint16_t mountpoint_len; - char *server; -+ char *replica; - char *db; - char *timeout_str; - int timeout; -@@ -21,6 +26,7 @@ struct uwsgi_gridfs_mountpoint { - uint16_t prefix_len; - char *username; - char *password; -+ std::vector servers; - }; - - struct uwsgi_gridfs { -@@ -38,33 +44,44 @@ extern struct uwsgi_server uwsgi; - extern struct uwsgi_plugin gridfs_plugin; - - static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_mountpoint *ugm, char *itemname, int need_free) { -- - try { -- mongo::scoped_ptr conn( mongo::ScopedDbConnection::getScopedDbConnection(ugm->server, ugm->timeout) ); -+ std::unique_ptr conn; -+ -+ if (ugm->replica) { -+ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); -+ dynamic_cast(conn.get())->connect(); -+ } -+ else { -+ conn = std::unique_ptr (new mongo::DBClientConnection()); -+ dynamic_cast(conn.get())->connect(ugm->server); -+ } -+ - try { - if (ugm->username && ugm->password) { - std::string errmsg; -- if ((*conn).conn().auth(ugm->db, ugm->username, ugm->password, errmsg)) { -+ if (!conn->auth(ugm->db, ugm->username, ugm->password, errmsg)) { - uwsgi_log("[uwsgi-gridfs]: %s\n", errmsg.c_str()); -- (*conn).done(); - uwsgi_403(wsgi_req); - return; - } - } -- mongo::GridFS gridfs((*conn).conn(), ugm->db); -- mongo::GridFile gfile = gridfs.findFile(itemname); -+ mongo::GridFS gridfs((*conn.get()), ugm->db); -+ mongo::GridFile gfile = gridfs.findFileByName(itemname); -+ - if (need_free) { - free(itemname); - itemname = NULL; - } -+ - if (!gfile.exists()) { -- (*conn).done(); - uwsgi_404(wsgi_req); - return; - } -+ - uwsgi_response_prepare_headers(wsgi_req, (char *)"200 OK", 6); - // first get the content_type (if possibile) - std::string filename = gfile.getFilename(); -+ - if (!ugm->no_mime) { - size_t mime_type_len = 0; - char *mime_type = uwsgi_get_mime_type((char *)filename.c_str(), filename.length(), &mime_type_len); -@@ -72,11 +89,13 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m - uwsgi_response_add_content_type(wsgi_req, mime_type, mime_type_len); - } - } -+ - if (ugm->orig_filename) { - char *filename_header = uwsgi_concat3((char *)"inline; filename=\"", (char *)filename.c_str(), (char *)"\""); - uwsgi_response_add_header(wsgi_req, (char *)"Content-Disposition", 19, filename_header, 19 + filename.length()); - free(filename_header); - } -+ - uwsgi_response_add_content_length(wsgi_req, gfile.getContentLength()); - - char http_last_modified[49]; -@@ -90,7 +109,7 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m - char *etag = uwsgi_concat3((char *)"\"", (char *)g_md5.c_str(), (char *)"\""); - uwsgi_response_add_header(wsgi_req, (char *)"ETag", 4, etag, 2+g_md5.length()); - free(etag); -- } -+ } - } - - if (ugm->md5) { -@@ -106,22 +125,20 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m - int i; - for(i=0;i -Date: Fri, 10 Apr 2015 23:07:41 +0400 -Subject: [PATCH 2/3] Fixed server list parsing - ---- - plugins/gridfs/gridfs.cc | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc -index 81ff0d9..f58d976 100644 ---- a/plugins/gridfs/gridfs.cc -+++ b/plugins/gridfs/gridfs.cc -@@ -211,6 +211,10 @@ static struct uwsgi_gridfs_mountpoint *uwsgi_gridfs_add_mountpoint(char *arg, si - ugm->servers.push_back(mongo::HostAndPort(buffer.substr(0, pos))); - buffer.erase(0, pos + 1); - } -+ -+ if (!ugm->servers.size()) { -+ ugm->servers.push_back(mongo::HostAndPort(ugm->server)); -+ } - } - - return ugm; --- -2.1.0 - - -From a870dbfb0dc4268cbcecf573765338ec5a52f195 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= - =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= - -Date: Fri, 10 Apr 2015 23:38:38 +0400 -Subject: [PATCH 3/3] Passing timeout argument to MongoDB connection - ---- - plugins/gridfs/gridfs.cc | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc -index f58d976..5f7c4ba 100644 ---- a/plugins/gridfs/gridfs.cc -+++ b/plugins/gridfs/gridfs.cc -@@ -48,14 +48,14 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m - std::unique_ptr conn; - - if (ugm->replica) { -- conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); -+ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers, ugm->timeout)); - dynamic_cast(conn.get())->connect(); - } - else { -- conn = std::unique_ptr (new mongo::DBClientConnection()); -+ conn = std::unique_ptr (new mongo::DBClientConnection(true, 0, ugm->timeout)); - dynamic_cast(conn.get())->connect(ugm->server); - } -- -+ - try { - if (ugm->username && ugm->password) { - std::string errmsg; --- -2.1.0 - diff --git a/uwsgi_fix_mono.patch b/uwsgi_fix_mono.patch deleted file mode 100644 index 217eb68..0000000 --- a/uwsgi_fix_mono.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -Naurp a/plugins/mono/uwsgiplugin.py b/plugins/mono/uwsgiplugin.py ---- a/plugins/mono/uwsgiplugin.py 2016-10-03 03:16:59.000000000 -0500 -+++ b/plugins/mono/uwsgiplugin.py 2017-03-20 16:18:54.917935286 -0500 -@@ -1,9 +1,9 @@ - import os - NAME='mono' - --CFLAGS = os.popen('pkg-config --cflags mono-2').read().rstrip().split() -+CFLAGS = os.popen('pkg-config --cflags mono-2 glib-2.0').read().rstrip().split() - LDFLAGS = [] --LIBS = os.popen('pkg-config --libs mono-2').read().rstrip().split() -+LIBS = os.popen('pkg-config --libs mono-2 glib-2.0').read().rstrip().split() - GCC_LIST = ['mono_plugin'] - - if os.uname()[0] == 'Darwin': diff --git a/uwsgi_fix_php74_zend.patch b/uwsgi_fix_php74_zend.patch deleted file mode 100644 index a6f47e8..0000000 --- a/uwsgi_fix_php74_zend.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c -index 72c390223..1690fb60c 100644 ---- a/plugins/php/php_plugin.c -+++ b/plugins/php/php_plugin.c -@@ -1115,10 +1115,9 @@ int uwsgi_php_request(struct wsgi_request *wsgi_req) { - - SG(request_info).path_translated = wsgi_req->file; - -+ memset(&file_handle, 0, sizeof(zend_file_handle)); - file_handle.type = ZEND_HANDLE_FILENAME; - file_handle.filename = real_filename; -- file_handle.free_filename = 0; -- file_handle.opened_path = NULL; - - if (php_request_startup(TSRMLS_C) == FAILURE) { - uwsgi_500(wsgi_req); diff --git a/uwsgi_fix_psgi.patch b/uwsgi_fix_psgi.patch deleted file mode 100644 index 0c47dba..0000000 --- a/uwsgi_fix_psgi.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff --git a/plugins/psgi/psgi.h b/plugins/psgi/psgi.h -index 92e6b588..064041a2 100644 ---- a/plugins/psgi/psgi.h -+++ b/plugins/psgi/psgi.h -@@ -87,3 +87,5 @@ void uwsgi_perl_exec(char *); - - void uwsgi_perl_check_auto_reload(void); - void uwsgi_psgi_preinit_apps(void); -+ -+extern struct uwsgi_perl uperl; -diff --git a/plugins/psgi/psgi_loader.c b/plugins/psgi/psgi_loader.c -index 1e61f0e9..a9211185 100644 ---- a/plugins/psgi/psgi_loader.c -+++ b/plugins/psgi/psgi_loader.c -@@ -1,7 +1,6 @@ - #include "psgi.h" - - extern struct uwsgi_server uwsgi; --struct uwsgi_perl uperl; - - extern struct uwsgi_plugin psgi_plugin; - -diff --git a/plugins/psgi/psgi_plugin.c b/plugins/psgi/psgi_plugin.c -index e1177be2..8ca0a2ed 100644 ---- a/plugins/psgi/psgi_plugin.c -+++ b/plugins/psgi/psgi_plugin.c -@@ -3,11 +3,7 @@ - extern char **environ; - extern struct uwsgi_server uwsgi; - --#ifdef __APPLE__ --extern struct uwsgi_perl uperl; --#else - struct uwsgi_perl uperl; --#endif - - struct uwsgi_plugin psgi_plugin; - diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch deleted file mode 100644 index 0333830..0000000 --- a/uwsgi_fix_rpath.patch +++ /dev/null @@ -1,64 +0,0 @@ -diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py -index f39ad63..d9e95bb 100644 ---- a/plugins/jvm/uwsgiplugin.py -+++ b/plugins/jvm/uwsgiplugin.py -@@ -65,11 +65,6 @@ if "-framework JavaVM" in JVM_LIBPATH: - - GCC_LIST = ['jvm_plugin'] - --if 'LD_RUN_PATH' in os.environ: -- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH[0][2:] --else: -- os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:] -- - def post_build(config): - if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: - os._exit(1) -diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py -index d930c44..273cdde 100644 ---- a/plugins/php/uwsgiplugin.py -+++ b/plugins/php/uwsgiplugin.py -@@ -19,7 +19,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() - - if ld_run_path: - LDFLAGS.append('-L%s' % ld_run_path) -- os.environ['LD_RUN_PATH'] = ld_run_path - - LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] - -diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py -index 843876f..69ae68f 100644 ---- a/plugins/python/uwsgiplugin.py -+++ b/plugins/python/uwsgiplugin.py -@@ -58,8 +58,6 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: - LDFLAGS.append("-L%s" % libdir) - LDFLAGS.append("-Wl,-rpath,%s" % libdir) - -- os.environ['LD_RUN_PATH'] = "%s" % libdir -- - LIBS.append('-lpython%s' % get_python_version()) - else: - LIBS = [] -diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py -index 210b28e..06f5edd 100644 ---- a/plugins/rack/uwsgiplugin.py -+++ b/plugins/rack/uwsgiplugin.py -@@ -46,7 +46,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" - - if has_shared == 'yes': - LDFLAGS.append('-L' + libpath ) -- os.environ['LD_RUN_PATH'] = libpath - LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) - else: - rubylibdir = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['rubylibdir']\"").read().rstrip() -diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py -index ecea48d..4f35984 100644 ---- a/plugins/ruby19/uwsgiplugin.py -+++ b/plugins/ruby19/uwsgiplugin.py -@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG - - libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() - LDFLAGS.append('-L' + libpath ) --os.environ['LD_RUN_PATH'] = libpath - LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() - diff --git a/uwsgi_ruby20_compatibility.patch b/uwsgi_ruby20_compatibility.patch deleted file mode 100644 index b4bf20d..0000000 --- a/uwsgi_ruby20_compatibility.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py -index 2375bc9..b908417 100644 ---- a/plugins/rack/uwsgiplugin.py -+++ b/plugins/rack/uwsgiplugin.py -@@ -10,13 +10,14 @@ except: - rbconfig = 'Config' - - version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() --v = version.split('.') - - GCC_LIST = ['rack_plugin', 'rack_api'] - --if (v[0] == '1' and v[1] == '9') or v[0] >= '2': -+if version >= '1.9': - CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() - CFLAGS.append('-DRUBY19') -+ if version >= '2.0': -+ CFLAGS.append('-DRUBY20') - CFLAGS.append('-Wno-unused-parameter') - rbconfig = 'RbConfig' - else: -diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py -index 4f35984..156018f 100644 ---- a/plugins/ruby19/uwsgiplugin.py -+++ b/plugins/ruby19/uwsgiplugin.py -@@ -10,13 +10,14 @@ except: - rbconfig = 'Config' - - version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() --v = version.split('.') - - GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api'] - --if v[0] == '1' and v[1] == '9': -+if version >= '1.9': - CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() - CFLAGS.append('-DRUBY19') -+ if version >= '2.0': -+ CFLAGS.append('-DRUBY20') - CFLAGS.append('-Wno-unused-parameter') - rbconfig = 'RbConfig' - else: diff --git a/uwsgi_trick_chroot_rpmbuild.patch b/uwsgi_trick_chroot_rpmbuild.patch deleted file mode 100644 index c23c06f..0000000 --- a/uwsgi_trick_chroot_rpmbuild.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/uwsgiconfig.py b/uwsgiconfig.py -index 59393e1..e43f092 100644 ---- a/uwsgiconfig.py -+++ b/uwsgiconfig.py -@@ -1422,10 +1422,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None): - except: - pass - -- if uc: -- plugin_dest = uc.get('plugin_build_dir', uc.get('plugin_dir')) + '/' + name + '_plugin' -- else: -- plugin_dest = name + '_plugin' -+ plugin_dest = name + '_plugin' - - shared_flag = '-shared' - diff --git a/uwsgi_v8-314_compatibility.patch b/uwsgi_v8-314_compatibility.patch deleted file mode 100644 index 63df56f..0000000 --- a/uwsgi_v8-314_compatibility.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naurp a/plugins/v8/uwsgiplugin.py b/plugins/v8/uwsgiplugin.py ---- a/plugins/v8/uwsgiplugin.py 2016-05-12 12:37:49.000000000 -0500 -+++ b/plugins/v8/uwsgiplugin.py 2016-08-01 22:56:50.969785338 -0500 -@@ -1,7 +1,7 @@ - import os - NAME='v8' - --CFLAGS = ['-Wno-deprecated-declarations'] -+CFLAGS = ['-Wno-deprecated-declarations', '-I/usr/include/v8-3.14'] - LDFLAGS = [] - LIBS = ['-lstdc++', '-lv8'] - engine = os.environ.get('UWSGICONFIG_V8_ENGINE', '') From fe1aea352d08ddf606c9590aef79c916be3ac44b Mon Sep 17 00:00:00 2001 From: Tomas Hrcka Date: Tue, 1 Feb 2022 08:05:02 +0100 Subject: [PATCH 348/427] Unretirement request: https://pagure.io/releng/issue/10604 --- .gitignore | 48 + README.Fedora | 6 + dead.package | 1 - emperor.ini | 7 + fedora.ini | 81 + sources | 2 + uwsgi-2.0.16-glfs.patch | 10 + uwsgi.init | 92 ++ uwsgi.service | 16 + uwsgi.spec | 2333 +++++++++++++++++++++++++++++ uwsgi.tmpfiles | 1 + uwsgi_fix_lua.patch | 31 + uwsgi_fix_mongodb.patch | 269 ++++ uwsgi_fix_mono.patch | 15 + uwsgi_fix_php74_zend.patch | 16 + uwsgi_fix_psgi.patch | 38 + uwsgi_fix_rpath.patch | 64 + uwsgi_ruby20_compatibility.patch | 42 + uwsgi_trick_chroot_rpmbuild.patch | 16 + uwsgi_v8-314_compatibility.patch | 12 + 20 files changed, 3099 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 README.Fedora delete mode 100644 dead.package create mode 100644 emperor.ini create mode 100644 fedora.ini create mode 100644 sources create mode 100644 uwsgi-2.0.16-glfs.patch create mode 100644 uwsgi.init create mode 100644 uwsgi.service create mode 100644 uwsgi.spec create mode 100644 uwsgi.tmpfiles create mode 100644 uwsgi_fix_lua.patch create mode 100644 uwsgi_fix_mongodb.patch create mode 100644 uwsgi_fix_mono.patch create mode 100644 uwsgi_fix_php74_zend.patch create mode 100644 uwsgi_fix_psgi.patch create mode 100644 uwsgi_fix_rpath.patch create mode 100644 uwsgi_ruby20_compatibility.patch create mode 100644 uwsgi_trick_chroot_rpmbuild.patch create mode 100644 uwsgi_v8-314_compatibility.patch diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..943f260 --- /dev/null +++ b/.gitignore @@ -0,0 +1,48 @@ +*.src.rpm +*.swp +*~ +*.log +/results_uwsgi +/uwsgi-1.0.4.tar.gz +/uwsgi-1.2.3.tar.gz +/uwsgi-wiki-doc-v41.txt +/uwsgi-1.2.4.tar.gz +/uwsgi-wiki-doc-v43.txt +/uwsgi-1.2.6.tar.gz +/uwsgi-1.4.5.tar.gz +/uwsgi-1.9.8.tar.gz +/1.9.17.tar.gz +/uwsgi-doc-1.9.17.tar.gz +/uwsgi-1.9.17.tar.gz +/uwsgi-docs-b86b3f7.tar.gz +/uwsgi-1.9.18.2.tar.gz +/uwsgi-docs-71f2d78.tar.gz +/uwsgi-1.9.19.tar.gz +/uwsgi-docs-119b215.tar.gz +/uwsgi-2.0.6.tar.gz +/uwsgi-docs-d2c4969.tar.gz +/uwsgi-2.0.7.tar.gz +/uwsgi-docs-f551708.tar.gz +/uwsgi-2.0.9.tar.gz +/uwsgi-docs-bc49905.tar.gz +/uwsgi-docs-4ac8256.tar.gz +/uwsgi-2.0.11.tar.gz +/uwsgi-docs-c96716d.tar.gz +/uwsgi-docs-85d6b16.tar.gz +/uwsgi-2.0.11.1.tar.gz +/uwsgi-2.0.11.2.tar.gz +/uwsgi-docs-2d5b92a.tar.gz +/uwsgi-docs-5f5f899.tar.gz +/uwsgi-2.0.12.tar.gz +/uwsgi-2.0.13.1.tar.gz +/uwsgi-docs-0326082.tar.gz +/uwsgi-2.0.14.tar.gz +/uwsgi-docs-f6eacc5.tar.gz +/uwsgi-2.0.15.tar.gz +/uwsgi-docs-1610d37.tar.gz +/uwsgi-2.0.16.tar.gz +/uwsgi-docs-eb4ad98.tar.gz +/uwsgi-2.0.17.1.tar.gz +/uwsgi-docs-32a8f73.tar.gz +/uwsgi-2.0.18.tar.gz +/uwsgi-docs-8d868ea.tar.gz diff --git a/README.Fedora b/README.Fedora new file mode 100644 index 0000000..1a12a2c --- /dev/null +++ b/README.Fedora @@ -0,0 +1,6 @@ +The build profile used to build this package is shipped along with the +-devel subpackage and is located in the ``buildconf`` subdirectory in the +src directory. +A copy of the documentation can be obtained by installing the ``uwsgi-docs`` +package. The documentation is a copy as of the git SHA: + diff --git a/dead.package b/dead.package deleted file mode 100644 index 5204a84..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -Orphaned for 6+ weeks diff --git a/emperor.ini b/emperor.ini new file mode 100644 index 0000000..d348937 --- /dev/null +++ b/emperor.ini @@ -0,0 +1,7 @@ +[uwsgi] +uid = uwsgi +gid = uwsgi +emperor = /etc/uwsgi.d +chmod-socket = 660 +emperor-tyrant = true +cap = setgid,setuid diff --git a/fedora.ini b/fedora.ini new file mode 100644 index 0000000..35298b8 --- /dev/null +++ b/fedora.ini @@ -0,0 +1,81 @@ +[uwsgi] +inherit = core +bin_name = uwsgi +xml = libxml2 +yaml = libyaml +json = jansson +pcre = auto +routing = auto +ssl = auto +malloc_implementation = libc +embedded_plugins = corerouter, echo, ping +plugins = airbrake, + alarm_curl, + alarm_xmpp, + cache, + carbon, + cgi, + cheaper_busyness, + cplusplus, + curl_cron, + dumbloop, + dummy, + fastrouter, + forkptyrouter, + geoip, + graylog2, + http, + ldap, + logcrypto, + logfile, + logpipe, + logsocket, + lua, + msgpack, + nagios, + notfound, + pam, + php, + pty, + rack, + rawrouter, + redislog, + router_basicauth, + router_cache, + router_expires, + router_hash, + router_http, + router_memcached, + router_metrics, + router_radius, + router_redirect, + router_redis, + router_rewrite, + router_spnego, + router_static, + router_uwsgi, + router_xmldir, + rpc, + rrdtool, + rsyslog, + ruby19, + spooler, + sqlite3, + ssi, + sslrouter, + stats_pusher_file, + stats_pusher_socket, + stats_pusher_statsd, + syslog, + transformation_chunked, + transformation_gzip, + transformation_offload, + transformation_template, + transformation_tofile, + transformation_toupper, + ugreen, + webdav, + xattr, + xslt, + zabbix, + zergpool diff --git a/sources b/sources new file mode 100644 index 0000000..e8512e0 --- /dev/null +++ b/sources @@ -0,0 +1,2 @@ +SHA512 (uwsgi-2.0.18.tar.gz) = 6561703279bcc4a81311d033810ac066d0f113bab13b0942f3eef86cac29c584a6641b52476840d6895151aee5ed064ae2d03b18932cf7f47e62f4eeed76da61 +SHA512 (uwsgi-docs-8d868ea.tar.gz) = 1ebf9bbe42d7a67553ff1081a2322fc00c72b72fa52879bba3b7ce8d9f4934b5643d96444ce75559b9f7303be4cdc0453ae2b4d73f1fa13cfc32f69d522bc2f0 diff --git a/uwsgi-2.0.16-glfs.patch b/uwsgi-2.0.16-glfs.patch new file mode 100644 index 0000000..fc41c38 --- /dev/null +++ b/uwsgi-2.0.16-glfs.patch @@ -0,0 +1,10 @@ +diff -up uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs uwsgi-2.0.16/plugins/glusterfs/glusterfs.c +--- uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs 2018-04-03 14:35:48.099323330 +0200 ++++ uwsgi-2.0.16/plugins/glusterfs/glusterfs.c 2018-04-03 14:35:07.573068567 +0200 +@@ -1,5 +1,5 @@ + #include +-#include ++#include + + extern struct uwsgi_server uwsgi; + diff --git a/uwsgi.init b/uwsgi.init new file mode 100644 index 0000000..dc9c445 --- /dev/null +++ b/uwsgi.init @@ -0,0 +1,92 @@ +#!/bin/sh +# +# uwsgi - this script starts and stops the uwsgi emperor +# +# chkconfig: - 85 15 +# description: Fast, self-healing, application container server +# processname: uwsgi +# config: /etc/uwsgi.ini +# config: /etc/uwsgi.d + +# Source function library. +. /etc/rc.d/init.d/functions + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +PROG=/usr/sbin/uwsgi +OWNER=uwsgi +NAME=uwsgi +DESC="Fast, self-healing, application container server" +DAEMON_OPTS="--ini /etc/uwsgi.ini --pidfile /var/run/uwsgi/uwsgi.pid --stats /var/run/uwsgi/stats.sock --daemonize /var/log/uwsgi.log" + +[ -f /etc/sysconfig/uwsgi ] && . /etc/sysconfig/uwsgi + +lockfile=/var/lock/subsys/uwsgi + +start () { + echo -n "Starting $NAME $DESC: " + daemon $PROG $DAEMON_OPTS + retval=$? + echo + [ $retval -eq 0 ] && touch $lockfile + return $retval +} + +stop () { + echo -n "Stopping $NAME $DESC: " + # uWSGI docs say INT is a gentler way to stop + killproc $PROG -INT + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +reload () { + echo "Reloading $NAME" + killproc $PROG -HUP + RETVAL=$? + echo +} + +restart () { + stop + start +} + +rh_status () { + status $PROG +} + +rh_status_q() { + rh_status >/dev/null 2>&1 +} + +case "$1" in + start) + rh_status_q && exit 0 + $1 + ;; + stop) + rh_status_q || exit 0 + $1 + ;; + restart) + $1 + ;; + reload) + rh_status_q || exit 7 + $1 + ;; + status) + rh_status + ;; + condrestart|try-restart) + rh_status_q || exit 0 + restart + ;; + *) + echo "Usage: $0 {start|stop|restart|condrestart|try-restart|reload|status}" >&2 + exit 2 + ;; +esac +exit 0 diff --git a/uwsgi.service b/uwsgi.service new file mode 100644 index 0000000..73db94c --- /dev/null +++ b/uwsgi.service @@ -0,0 +1,16 @@ +[Unit] +Description=uWSGI Emperor Service +After=syslog.target + +[Service] +EnvironmentFile=-/etc/sysconfig/uwsgi +ExecStart=/usr/sbin/uwsgi --ini /etc/uwsgi.ini --pidfile /run/uwsgi/uwsgi.pid --stats /run/uwsgi/stats.sock +ExecReload=/bin/kill -HUP $MAINPID +KillSignal=SIGINT +Restart=always +Type=notify +StandardError=syslog +NotifyAccess=all + +[Install] +WantedBy=multi-user.target diff --git a/uwsgi.spec b/uwsgi.spec new file mode 100644 index 0000000..b734b5b --- /dev/null +++ b/uwsgi.spec @@ -0,0 +1,2333 @@ +# Documentation sources: +%global commit 8d868eadfb460785a735030271afa233ac854763 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global docrepo uwsgi-docs + +%{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} +%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} + +# This is primarily built for fedora, make it easy right now +%if 0%{?fedora} +%bcond_without systemd +%bcond_without go +%if 0%{?fedora} < 31 +%bcond_without python2 +%bcond_without python2_greenlet +%endif +%bcond_without python3 +%bcond_without ruby19 +%bcond_without tuntap +%bcond_without zeromq +%bcond_without perl +%bcond_without glusterfs +# javapackages-tools retired (apache-ivy orphanage) +%bcond_with java +# Fedora httpd includes mod_proxy_uwsgi +# https://bugzilla.redhat.com/show_bug.cgi?id=1574335 +%bcond_with mod_proxy_uwsgi +#mono +%ifarch %{mono_arches} +%bcond_without mono +%else +%bcond_with mono +%endif +# mongodblibs +# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 +%bcond_with mongodblibs +# v8-314 retired +%bcond_with v8 +#mongodblibs dependency +%if %{without mongodblibs} +%bcond_with gridfs +%else +%bcond_without gridfs +%endif +#Fedora endif +%endif + +# Conditionally disable some things in epel6 +%if 0%{?rhel} == 6 +# javapackages-tools retired in epel (apache-ivy orphanage) +%bcond_with java +# el6 doesn't ship with systemd +%bcond_with systemd +# el6 doesn't have go +%bcond_with go +%bcond_without python2 +%bcond_without python2_greenlet +# el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 +%bcond_with ruby19 +# el6 doesn't have perl-PSGI +# el6 does have perl-Coro +%bcond_with perl +# el6 httpd does not include mod_proxy_uwsgi +%bcond_without mod_proxy_uwsgi +# this fails in el not sure why +%bcond_with gridfs +%bcond_with tuntap +%bcond_with mongodblibs +%global manual_py_compile 0 +%else +%global manual_py_compile 1 +%endif + +# Conditionally enable/disable some things in epel7 +%if 0%{?rhel} == 7 +# el7 does have java +%bcond_without java +# el7 does have systemd +%bcond_without systemd +%bcond_without python2 +%bcond_without python3 +%bcond_without python3_other +# el7 doesn't have zeromq +%bcond_with zeromq +# el7 does have python-greenlet, but only on x86_64 +%ifarch x86_64 +%bcond_without python2_greenlet +%endif +# el7 does have perl-PSGI +# el7 does have perl-Coro +%bcond_without perl +# el7 httpd does not include mod_proxy_uwsgi +%bcond_without mod_proxy_uwsgi +# el7 can now build glusterfs but only on x86_64 +%ifnarch x86_64 +%bcond_with glusterfs +%else +%bcond_without glusterfs +%endif +# this fails in el7 not sure why +%bcond_with gridfs +%endif + +# Turn off byte compilation so it doesn't try +# to auto-optimize the code in /usr/src/uwsgi +%if %{manual_py_compile} == 1 +%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') +%endif + +# Disable router_access in fedora >= 28 because tcp_wrappers deprecation +%if 0%{?fedora} >= 28 +%bcond_with tcp_wrappers +%else +%bcond_without tcp_wrappers +%endif + +# Set %%__python to the newest possible version +%if %{with python3} +%global __python %{__python3} +%else +%if %{with python3_other} +%global __python %{__python3_other} +%else +%if %{with python2} +%global __python %{__python2} +%else +%global __python /usr/bin/true +%endif +%endif +%endif + +Name: uwsgi +Version: 2.0.18 +Release: 18%{?dist} +Summary: Fast, self-healing, application container server +# uwsgi is licensed under GPLv2 with a linking exception +# docs are licensed under MIT +License: GPLv2 with exceptions and MIT +URL: https://github.com/unbit/uwsgi + +Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz +Source1: fedora.ini +Source2: uwsgi.service +Source3: emperor.ini +Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz +Source5: README.Fedora +Source6: uwsgi.init +Source7: uwsgi.tmpfiles + +Patch0: uwsgi_trick_chroot_rpmbuild.patch +Patch1: uwsgi_fix_rpath.patch +Patch2: uwsgi_ruby20_compatibility.patch +Patch3: uwsgi_fix_lua.patch +# https://github.com/unbit/uwsgi/issues/882 +Patch5: uwsgi_fix_mongodb.patch +Patch6: uwsgi_v8-314_compatibility.patch +Patch7: uwsgi_fix_mono.patch +# https://github.com/unbit/uwsgi/pull/1772 +Patch9: uwsgi-2.0.16-glfs.patch +# https://github.com/unbit/uwsgi/pull/2141 +Patch10: uwsgi_fix_psgi.patch +# https://github.com/unbit/uwsgi/pull/2105 +Patch11: uwsgi_fix_php74_zend.patch + +BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel +BuildRequires: libyaml-devel, ruby-devel +%if %{with tcp_wrappers} +BuildRequires: tcp_wrappers-devel +%endif +%if %{with python2} +BuildRequires: python2-devel +%if %{with python2_greenlet} +BuildRequires: python-greenlet-devel +%endif +%endif +%if %{with python3} +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: python%{python3_pkgversion}-greenlet-devel +%endif +%if %{with python3_other} +BuildRequires: python%{python3_other_pkgversion}-devel +%endif +%if %{with glusterfs} +BuildRequires: glusterfs-devel, glusterfs-api-devel +%endif +BuildRequires: lua-devel, ruby, pcre-devel +BuildRequires: php-devel, php-embedded, libedit-devel, krb5-devel +BuildRequires: openssl-devel +BuildRequires: bzip2-devel, gmp-devel, pam-devel +BuildRequires: sqlite-devel, libcap-devel +BuildRequires: httpd-devel, libcurl-devel +BuildRequires: gloox-devel, libstdc++-devel +BuildRequires: GeoIP-devel, libevent-devel, zlib-devel +BuildRequires: openldap-devel, boost-devel +BuildRequires: libattr-devel, libxslt-devel +%if %{with perl} +BuildRequires: perl-devel, perl-ExtUtils-Embed, perl-Coro +%endif +%if %{with zeromq} +BuildRequires: zeromq-devel +%endif +%if %{with go} +BuildRequires: gcc-go +%endif +%if %{with systemd} +BuildRequires: systemd-devel, systemd-units +%endif +%if %{with mono} +BuildRequires: mono-devel, mono-web, glib2-devel +%endif +%if %{with v8} +%if 0%{?fedora} >= 25 +BuildRequires: v8-314-devel +%else +BuildRequires: v8-devel +%endif +%endif +%if %{with mongodblibs} +%if 0%{?fedora} >= 30 +BuildRequires: mongo-cxx-driver-legacy-devel +%else +BuildRequires: mongo-cxx-driver-devel +%endif +%endif + +%if 0%{?fedora} >= 28 +BuildRequires: libargon2-devel +Obsoletes: uwsgi-router-access <= 2.0.16 +%endif + +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Obsoletes: uwsgi-routers <= 2.0.6 +Obsoletes: uwsgi-plugin-erlang <= 1.9.20-1 +Obsoletes: uwsgi-plugin-admin <= 2.0.6 + +Requires(pre): shadow-utils +%if %{with systemd} +%{?systemd_requires} +%else +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): initscripts +%endif + +%filter_requires_in %{_usrsrc} +%filter_provides_in %{_usrsrc} +%filter_provides_in %{_libdir}/uwsgi/.*\.so$ +%filter_setup + +%description +uWSGI is a fast (pure C), self-healing, developer/sysadmin-friendly +application container server. Born as a WSGI-only server, over time it has +evolved in a complete stack for networked/clustered web applications, +implementing message/object passing, caching, RPC and process management. +It uses the uwsgi (all lowercase, already included by default in the Nginx +and Cherokee releases) protocol for all the networking/interprocess +communications. Can be run in preforking mode, threaded, +asynchronous/evented and supports various form of green threads/co-routine +(like uGreen and Fiber). Sysadmin will love it as it can be configured via +command line, environment variables, xml, .ini and yaml files and via LDAP. +Being fully modular can use tons of different technology on top of the same +core. + +%package -n uwsgi-devel +Summary: uWSGI - Development header files and libraries +Requires: uwsgi = %{version}-%{release} + +%description -n uwsgi-devel +This package contains the development header files and libraries +for uWSGI extensions + +%if %{with python2} +%package -n python2-uwsgidecorators +Summary: Python 2 decorators providing access to the uwsgi API +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python2 = %{version}-%{release} +Obsoletes: python-uwsgidecorators < 2.0.16-4 +Provides: python-uwsgidecorators = %{version}-%{release} + +%description -n python2-uwsgidecorators +The uwsgidecorators Python 2 module provides higher-level access to the uWSGI API. +%endif + +%if %{with python3} +%package -n python%{python3_pkgversion}-uwsgidecorators +Summary: Python %{python3_version} decorators providing access to the uwsgi API +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} +%if 0%{?rhel} == 7 +Obsoletes: python3-uwsgidecorators < 2.0.16-4 +Provides: python3-uwsgidecorators = %{version}-%{release} +%endif + +%description -n python%{python3_pkgversion}-uwsgidecorators +The uwsgidecorators Python %{python3_version} module provides higher-level access to the uWSGI API. +%endif + +%if %{with python3_other} +%package -n python%{python3_other_pkgversion}-uwsgidecorators +Summary: Python %{python3_other_version} decorators providing access to the uwsgi API +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release} + +%description -n python%{python3_other_pkgversion}-uwsgidecorators +The uwsgidecorators Python %{python3_other_version} module provides higher-level access to the uWSGI API. +%endif + +%package -n uwsgi-docs +Summary: uWSGI - Documentation +Requires: uwsgi + +%description -n uwsgi-docs +This package contains the documentation files for uWSGI + +%package -n uwsgi-plugin-common +Summary: uWSGI - Common plugins for uWSGI +Requires: uwsgi = %{version}-%{release} + +%description -n uwsgi-plugin-common +This package contains the most common plugins used with uWSGI. The +plugins included in this package are: cache, CGI, RPC, uGreen + +# Stats pushers + +%package -n uwsgi-stats-pusher-file +Summary: uWSGI - File Stats Pusher for uWSGI +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-stats-pusher-file +This package contains the stats_pusher_file plugin for uWSGI + +%if %{with mongodblibs} +%package -n uwsgi-stats-pusher-mongodb +Summary: uWSGI - MongoDB Stats Pusher for uWSGI +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-stats-pusher-mongodb +This package contains the stats_pusher_mongodb plugin for uWSGI +%endif + +%package -n uwsgi-stats-pusher-socket +Summary: uWSGI - Socket Stats Pusher for uWSGI +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-stats-pusher-socket +This package contains the stats_pusher_socket plugin for uWSGI + +%package -n uwsgi-stats-pusher-statsd +Summary: uWSGI - StatsD Stats Pusher for uWSGI +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-stats-pusher-statsd +This package contains the stats_pusher_statsd plugin for uWSGI + +%package -n uwsgi-stats-pusher-zabbix +Summary: uWSGI - Zabbix Stats Pusher for uWSGI +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-stats-pusher-zabbix +This package contains the zabbix plugin for uWSGI + +# Alarms + +%package -n uwsgi-alarm-curl +Summary: uWSGI - Curl alarm plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl + +%description -n uwsgi-alarm-curl +This package contains the alarm_curl alarm plugin for uWSGI + +%package -n uwsgi-alarm-xmpp +Summary: uWSGI - XMPP alarm plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, gloox + +%description -n uwsgi-alarm-xmpp +This package contains the alarm_xmpp alarm plugin for uWSGI + +# Transformations + +%package -n uwsgi-transformation-chunked +Summary: uWSGI - Chunked Transformation plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} + +%description -n uwsgi-transformation-chunked +This package contains the transformation_chunked plugin for uWSGI + +%package -n uwsgi-transformation-gzip +Summary: uWSGI - GZip Transformation plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} + +%description -n uwsgi-transformation-gzip +This package contains the transformation_gzip plugin for uWSGI + +%package -n uwsgi-transformation-offload +Summary: uWSGI - Off-Load Transformation plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} + +%description -n uwsgi-transformation-offload +This package contains the transformation_offload plugin for uWSGI + +%package -n uwsgi-transformation-template +Summary: uWSGI - Template Transformation plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} + +%description -n uwsgi-transformation-template +This package contains the transformation_template plugin for uWSGI + +%package -n uwsgi-transformation-tofile +Summary: uWSGI - ToFile Transformation plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-router-uwsgi = %{version}-%{release} + +%description -n uwsgi-transformation-tofile +This package contains the transformation_tofile plugin for uWSGI + +%package -n uwsgi-transformation-toupper +Summary: uWSGI - ToUpper Transformation plugin +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-transformation-toupper +This package contains the transformation_toupper plugin for uWSGI + +# Loggers + +%package -n uwsgi-log-encoder-msgpack +Summary: uWSGI - msgpack log encoder plugin +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-log-encoder-msgpack +This package contains the msgpack log encoder plugin for uWSGI + +%package -n uwsgi-logger-crypto +Summary: uWSGI - logcrypto logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-logger-crypto +This package contains the logcrypto logger plugin for uWSGI + +%package -n uwsgi-logger-file +Summary: uWSGI - logfile logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} + +%description -n uwsgi-logger-file +This package contains the logfile logger plugin for uWSGI + +%package -n uwsgi-logger-graylog2 +Summary: uWSGI - Graylog2 logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, zlib + +%description -n uwsgi-logger-graylog2 +This package contains the graylog2 logger plugin for uWSGI + +%if %{with mongodblibs} +%package -n uwsgi-logger-mongodb +Summary: uWSGI - mongodblog logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} + +%description -n uwsgi-logger-mongodb +This package contains the mongodblog logger plugin for uWSGI +%endif + +%package -n uwsgi-logger-pipe +Summary: uWSGI - logpipe logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-logger-pipe +This package contains the logcrypto logger plugin for uWSGI + +%package -n uwsgi-logger-redis +Summary: uWSGI - redislog logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} + +%description -n uwsgi-logger-redis +This package contains the redislog logger plugin for uWSGI + +%package -n uwsgi-logger-rsyslog +Summary: uWSGI - rsyslog logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-rsyslog <= 1.9.8-1 +Provides: uwsgi-plugin-rsyslog = %{version}-%{release} + +%description -n uwsgi-logger-rsyslog +This package contains the rsyslog logger plugin for uWSGI + +%package -n uwsgi-logger-socket +Summary: uWSGI - logsocket logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-loggers <= 1.9.8-1 +Provides: uwsgi-loggers = %{version}-%{release} + +%description -n uwsgi-logger-socket +This package contains the logsocket logger plugin for uWSGI + +%package -n uwsgi-logger-syslog +Summary: uWSGI - syslog logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-syslog <= 1.9.8-1 +Provides: uwsgi-plugin-syslog = %{version}-%{release} + +%description -n uwsgi-logger-syslog +This package contains the syslog logger plugin for uWSGI + +%if %{with systemd} +%package -n uwsgi-logger-systemd +Summary: uWSGI - systemd journal logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-logger-systemd +This package contains the systemd journal logger plugin for uWSGI +%endif + +%if %{with zeromq} +%package -n uwsgi-logger-zeromq +Summary: uWSGI - ZeroMQ logger plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq + +%description -n uwsgi-logger-zeromq +This package contains the ZeroMQ logger plugin for uWSGI +%endif + +# Plugins + +%package -n uwsgi-plugin-airbrake +Summary: uWSGI - Plugin for AirBrake support +Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl + +%description -n uwsgi-plugin-airbrake +This package contains the airbrake plugin for uWSGI + +%package -n uwsgi-plugin-cache +Summary: uWSGI - Plugin for cache support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-cache +This package contains the cache plugin for uWSGI + +%package -n uwsgi-plugin-carbon +Summary: uWSGI - Plugin for Carbon/Graphite support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-carbon +This package contains the Carbon plugin for uWSGI (to use in graphite) + +%if %{with perl} +%package -n uwsgi-plugin-psgi +Summary: uWSGI - Plugin for PSGI support +Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-psgi +This package contains the PSGI plugin for uWSGI + +%package -n uwsgi-plugin-coroae +Summary: uWSGI - Plugin for PERL Coro support +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{version}-%{release}, perl-Coro + +%description -n uwsgi-plugin-coroae +This package contains the coroae plugin for uWSGI +%endif + +%package -n uwsgi-plugin-cheaper-busyness +Summary: uWSGI - Plugin for Cheaper Busyness algos +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-cheaper-busyness +This package contains the cheaper_busyness plugin for uWSGI + +%package -n uwsgi-plugin-cplusplus +Summary: uWSGI - Plugin for C++ support +Requires: uwsgi-plugin-common = %{version}-%{release}, libstdc++ + +%description -n uwsgi-plugin-cplusplus +This package contains the cplusplus plugin for uWSGI + +%package -n uwsgi-plugin-curl-cron +Summary: uWSGI - Plugin for CURL Cron support +Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl + +%description -n uwsgi-plugin-curl-cron +This package contains the curl_cron plugin for uWSGI + +%package -n uwsgi-plugin-dumbloop +Summary: uWSGI - Plugin for Dumb Loop support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-dumbloop +This package contains the dumbloop plugin for uWSGI + +%package -n uwsgi-plugin-dummy +Summary: uWSGI - Plugin for Dummy support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-dummy +This package contains the dummy plugin for uWSGI + +%package -n uwsgi-plugin-fiber +Summary: uWSGI - Plugin for Ruby Fiber support +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{version}-%{release} + +%description -n uwsgi-plugin-fiber +This package contains the fiber plugin for uWSGI + +%if %{with go} +%package -n uwsgi-plugin-gccgo +Summary: uWSGI - Plugin for GoLang support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-gccgo +This package contains the gccgo plugin for uWSGI +%endif + +%package -n uwsgi-plugin-geoip +Summary: uWSGI - Plugin for GeoIP support +Requires: uwsgi-plugin-common = %{version}-%{release}, GeoIP + +%description -n uwsgi-plugin-geoip +This package contains the geoip plugin for uWSGI + +%if %{with python2} +%package -n uwsgi-plugin-python2-gevent +Summary: uWSGI - Plugin for Python 2 GEvent support +Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent +Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 +Provides: uwsgi-plugin-gevent = %{version}-%{release} + +%description -n uwsgi-plugin-python2-gevent +This package contains the Python 2 gevent plugin for uWSGI +%endif + +%if %{with python3} +%package -n uwsgi-plugin-python%{python3_pkgversion}-gevent +Summary: uWSGI - Plugin for Python %{python3_version} GEvent support +Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent + +%description -n uwsgi-plugin-python%{python3_pkgversion}-gevent +This package contains the Python %{python3_version} gevent plugin for uWSGI +%endif + +%if %{with python3_other} +%package -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent +Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support +Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent + +%description -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent +This package contains the Python %{python3_other_version} gevent plugin for uWSGI +%endif + +%if %{with glusterfs} +%package -n uwsgi-plugin-glusterfs +Summary: uWSGI - Plugin for GlusterFS support +Requires: uwsgi-plugin-common = %{version}-%{release}, glusterfs-api + +%description -n uwsgi-plugin-glusterfs +This package contains the glusterfs plugin for uWSGI +%endif + +%if %{with python2} +%if %{with python2_greenlet} +%package -n uwsgi-plugin-python2-greenlet +Summary: uWSGI - Plugin for Python 2 Greenlet support +Requires: python-greenlet, uwsgi-plugin-python2 = %{version}-%{release} +Obsoletes: uwsgi-plugin-greenlet < 2.0.16-4 +Provides: uwsgi-plugin-greenlet = %{version}-%{release} + +%description -n uwsgi-plugin-python2-greenlet +This package contains the Python 2 greenlet plugin for uWSGI +%endif +%endif + +%if %{with python3} +%package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet +Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support +Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} + +%description -n uwsgi-plugin-python%{python3_pkgversion}-greenlet +This package contains the Python %{python3_version} greenlet plugin for uWSGI +%endif + +%if %{with gridfs} +%package -n uwsgi-plugin-gridfs +Summary: uWSGI - Plugin for GridFS support +Requires: uwsgi-plugin-common = %{version}-%{release}, libmongodb + +%description -n uwsgi-plugin-gridfs +This package contains the gridfs plugin for uWSGI +%endif + +%if %{with java} +%package -n uwsgi-plugin-jvm +Summary: uWSGI - Plugin for JVM support +BuildRequires: java-devel +Requires: uwsgi-plugin-common = %{version}-%{release}, java-headless, jpackage-utils + +%description -n uwsgi-plugin-jvm +This package contains the JVM plugin for uWSGI + +%package -n uwsgi-plugin-jwsgi +Summary: uWSGI - Plugin for JWSGI support +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release} + +%description -n uwsgi-plugin-jwsgi +This package contains the jwsgi plugin for uWSGI +%endif + +%package -n uwsgi-plugin-ldap +Summary: uWSGI - Plugin for LDAP support +Requires: uwsgi-plugin-common = %{version}-%{release}, openldap + +%description -n uwsgi-plugin-ldap +This package contains the ldap plugin for uWSGI + +%package -n uwsgi-plugin-lua +Summary: uWSGI - Plugin for LUA support +Requires: lua, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-lua +This package contains the lua plugin for uWSGI + +%if %{with zeromq} +%package -n uwsgi-plugin-mongrel2 +Summary: uWSGI - Plugin for Mongrel2 support +Requires: uwsgi-plugin-common = %{version}-%{release}, zeromq + +%description -n uwsgi-plugin-mongrel2 +This package contains the mongrel2 plugin for uWSGI +%endif + +%if %{with mono} +%package -n uwsgi-plugin-mono +Summary: uWSGI - Plugin for Mono / .NET support +Requires: uwsgi-plugin-common = %{version}-%{release}, mono-web + +%description -n uwsgi-plugin-mono +This package contains the mono plugin for uWSGI +%endif + +%package -n uwsgi-plugin-nagios +Summary: uWSGI - Plugin for Nagios support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-nagios +This package contains the nagios plugin for uWSGI + +%package -n uwsgi-plugin-notfound +Summary: uWSGI - Plugin for notfound support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-notfound +This package contains the notfound plugin for uWSGI + +%package -n uwsgi-plugin-pam +Summary: uWSGI - Plugin for PAM support +Requires: uwsgi-plugin-common = %{version}-%{release}, pam + +%description -n uwsgi-plugin-pam +This package contains the PAM plugin for uWSGI + +%package -n uwsgi-plugin-php +Summary: uWSGI - Plugin for PHP support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-php +This package contains the PHP plugin for uWSGI + +%package -n uwsgi-plugin-pty +Summary: uWSGI - Plugin for PTY support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-pty +This package contains the pty plugin for uWSGI + +%if %{with python2} +%package -n uwsgi-plugin-python2 +Summary: uWSGI - Plugin for Python 2 support +Requires: python2, uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-python < 2.0.16-4 +Provides: uwsgi-plugin-python = %{version}-%{release} + +%description -n uwsgi-plugin-python2 +This package contains the Python 2 plugin for uWSGI +%endif + +%if %{with python3} +%package -n uwsgi-plugin-python%{python3_pkgversion} +Summary: uWSGI - Plugin for Python %{python3_version} support +Requires: python%{python3_pkgversion}, uwsgi-plugin-common = %{version}-%{release} +%if 0%{?rhel} == 7 +Obsoletes: uwsgi-plugin-python3 < 2.0.16-4 +Provides: uwsgi-plugin-python3 = %{version}-%{release} +%endif + +%description -n uwsgi-plugin-python%{python3_pkgversion} +This package contains the Python %{python3_version} plugin for uWSGI +%endif + +%if %{with python3_other} +%package -n uwsgi-plugin-python%{python3_other_pkgversion} +Summary: uWSGI - Plugin for Python %{python3_other_version} support +Requires: python%{python3_other_pkgversion}, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-python%{python3_other_pkgversion} +This package contains the Python %{python3_other_version} plugin for uWSGI +%endif + +%package -n uwsgi-plugin-rack +Summary: uWSGI - Ruby rack plugin +Requires: rubygem-rack, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-rack +This package contains the rack plugin for uWSGI + +%package -n uwsgi-plugin-rbthreads +Summary: uWSGI - Ruby native threads support plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, ruby + +%description -n uwsgi-plugin-rbthreads +This package contains the rbthreads plugin for uWSGI + +%if %{with java} +%package -n uwsgi-plugin-ring +Summary: uWSGI - Clojure/Ring request handler support plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-jvm = %{version}-%{release}, clojure + +%description -n uwsgi-plugin-ring +This package contains the ring plugin for uWSGI +%endif + +%package -n uwsgi-plugin-rpc +Summary: uWSGI - Plugin for RPC support +Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-rpc +This package contains the RPC plugin for uWSGI + +%package -n uwsgi-plugin-rrdtool +Summary: uWSGI - Plugin for RRDTool support +Requires: rrdtool, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-rrdtool +This package contains the RRD Tool plugin for uWSGI + +%package -n uwsgi-plugin-ruby +Summary: uWSGI - Plugin for Ruby support +Requires: ruby, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-ruby +This package contains the ruby19 plugin for uWSGI + +%package -n uwsgi-plugin-spooler +Summary: uWSGI - Plugin for Remote Spooling support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-spooler +This package contains the spooler plugin for uWSGI + +%package -n uwsgi-plugin-sqlite3 +Summary: uWSGI - SQLite3 plugin +Requires: uwsgi-plugin-common = %{version}-%{release}, sqlite + +%description -n uwsgi-plugin-sqlite3 +This package contains the sqlite3 plugin for uWSGI + +%package -n uwsgi-plugin-ssi +Summary: uWSGI - Server Side Includes plugin +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-ssi +This package contains the ssi plugin for uWSGI + +%if %{with python2} +%package -n uwsgi-plugin-python2-tornado +Summary: uWSGI - Plugin for Tornado (Python 2) support +Requires: uwsgi-plugin-common = %{version}-%{release}, python-tornado +Obsoletes: uwsgi-plugin-tornado < 2.0.16-4 +Provides: uwsgi-plugin-tornado = %{version}-%{release} + +%description -n uwsgi-plugin-python2-tornado +This package contains the tornado (Python 2) plugin for uWSGI +%endif + +%if %{with python3} +%package -n uwsgi-plugin-python%{python3_pkgversion}-tornado +Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support +Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado +%if 0%{?fedora} && 0%{?fedora} < 29 +Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 +Provides: uwsgi-plugin-tornado3 = %{version}-%{release} +%endif + +%description -n uwsgi-plugin-python%{python3_pkgversion}-tornado +This package contains the tornado (Python %{python3_version}) plugin for uWSGI +%endif + +%package -n uwsgi-plugin-ugreen +Summary: uWSGI - Plugin for uGreen support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-ugreen +This package contains the uGreen plugin for uWSGI + +%if %{with v8} +%package -n uwsgi-plugin-v8 +Summary: uWSGI - Plugin for v8 support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-v8 +This package contains the v8 plugin for uWSGI +%endif + +%package -n uwsgi-plugin-webdav +Summary: uWSGI - Plugin for WebDAV support +Requires: uwsgi-plugin-common = %{version}-%{release}, libattr + +%description -n uwsgi-plugin-webdav +This package contains the webdav plugin for uWSGI + +%package -n uwsgi-plugin-xattr +Summary: uWSGI - Plugin for Extra Attributes support +Requires: uwsgi-plugin-common = %{version}-%{release}, libattr + +%description -n uwsgi-plugin-xattr +This package contains the xattr plugin for uWSGI + +%package -n uwsgi-plugin-xslt +Summary: uWSGI - Plugin for XSLT transformation support +Requires: uwsgi-plugin-common = %{version}-%{release}, libxslt + +%description -n uwsgi-plugin-xslt +This package contains the xslt plugin for uWSGI + +%package -n uwsgi-plugin-zergpool +Summary: uWSGI - Plugin for zergpool support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-zergpool +This package contains the zergpool plugin for uWSGI + +# Routers + +%if %{with tcp_wrappers} +%package -n uwsgi-router-access +Summary: uWSGI - Plugin for router_access router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-access +This package contains the router_access plugin for uWSGI +%endif + +%package -n uwsgi-router-basicauth +Summary: uWSGI - Plugin for Basic Auth router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-basicauth +This package contains the basicauth plugin for uWSGI + +%package -n uwsgi-router-cache +Summary: uWSGI - Plugin for Cache router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-cache +This package contains the cache router plugin for uWSGI + +%package -n uwsgi-router-expires +Summary: uWSGI - Plugin for Expires router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-expires +This package contains the expires router plugin for uWSGI + +%package -n uwsgi-router-fast +Summary: uWSGI - Plugin for FastRouter support +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-fastrouter <= 2.0.6 +Provides: uwsgi-plugin-fastrouter = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-fast +This package contains the fastrouter (proxy) plugin for uWSGI + +%package -n uwsgi-router-forkpty +Summary: uWSGI - Plugin for ForkPTY router support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-router-forkpty +This package contains the ForkPTY router plugin for uWSGI + +%package -n uwsgi-router-hash +Summary: uWSGI - Plugin for Hash router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-hash +This package contains the hash router plugin for uWSGI + +%package -n uwsgi-router-http +Summary: uWSGI - Plugin for HTTP router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-http +This package contains the http router plugin for uWSGI + +%package -n uwsgi-router-memcached +Summary: uWSGI - Plugin for Memcached router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-memcached +This package contains the memcached router plugin for uWSGI + +%package -n uwsgi-router-metrics +Summary: uWSGI - Plugin for Metrics router support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-router-metrics +This package contains the metrics router plugin for uWSGI + +%package -n uwsgi-router-radius +Summary: uWSGI - Plugin for Radius router support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-router-radius +This package contains the metrics router plugin for uWSGI + +%package -n uwsgi-router-raw +Summary: uWSGI - Plugin for Raw Router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-rawrouter <= 2.0.6 +Provides: uwsgi-plugin-rawrouter = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-raw +This package contains the Raw router plugin for uWSGI + +%package -n uwsgi-router-redirect +Summary: uWSGI - Plugin for Redirect router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-redirect +This package contains the redirect router plugin for uWSGI + +%package -n uwsgi-router-redis +Summary: uWSGI - Plugin for Redis router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-redis +This package contains the redis router plugin for uWSGI + +%package -n uwsgi-router-rewrite +Summary: uWSGI - Plugin for Rewrite router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-rewrite +This package contains the rewrite router plugin for uWSGI + +%package -n uwsgi-router-spnego +Summary: uWSGI - Plugin for SPNEgo router support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-router-spnego +This package contains the spnego router plugin for uWSGI + +%package -n uwsgi-router-ssl +Summary: uWSGI - Plugin for SSL router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Obsoletes: uwsgi-plugin-sslrouter <= 2.0.6 +Provides: uwsgi-plugin-sslrouter = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-ssl +This package contains the SSL router plugin for uWSGI + +%package -n uwsgi-router-static +Summary: uWSGI - Plugin for Static router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-static +This package contains the Static router plugin for uWSGI + +%package -n uwsgi-router-tuntap +Summary: uWSGI - Plugin for TUN/TAP router support +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-router-tuntap +This package contains the tuntap router plugin for uWSGI + +%package -n uwsgi-router-uwsgi +Summary: uWSGI - Plugin for uWSGI router support +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-uwsgi +This package contains the uwsgi router plugin for uWSGI + +%package -n uwsgi-router-xmldir +Summary: uWSGI - Plugin for XMLDir router rupport +Requires: uwsgi-plugin-common = %{version}-%{release} +Provides: uwsgi-routers = %{version}-%{release} + +%description -n uwsgi-router-xmldir +This package contains the xmldir router plugin for uWSGI + +# The rest + +%if %{with mod_proxy_uwsgi} +%package -n mod_proxy_uwsgi +Summary: uWSGI - Apache2 proxy module +Requires: uwsgi = %{version}-%{release}, httpd + +%description -n mod_proxy_uwsgi +Fully Apache API compliant proxy module +%endif + + +%prep +%setup -q +cp -p %{SOURCE1} buildconf/ +echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/fedora.ini +cp -p %{SOURCE5} README.Fedora +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%if 0%{?fedora} >= 22 +%patch5 -p1 +%endif +%if %{with v8} && 0%{?fedora} >= 25 +%patch6 -p1 +%endif +%if %{with mono} +%patch7 -p1 +%endif +%patch9 -p1 +%if 0%{?fedora} >= 32 +%patch10 -p1 +%endif +%patch11 -p1 + +#disable plug-ins +%if %{without mongodblibs} +sed -in "s/mongodblog, //" buildconf/fedora.ini +sed -in "s/stats_pusher_mongodb, //" buildconf/fedora.ini +%endif +%if %{without v8} +sed -in "s/v8, //" buildconf/fedora.ini +%endif +%if %{without gridfs} +sed -in "s/gridfs, //" buildconf/fedora.ini +%endif +%if %{without mono} +sed -in "s/mono, //" buildconf/fedora.ini +%endif + +%if %{with perl} && (%{with python3} || %{with python3_other}) +%{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py +%endif + + +%build +CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --build fedora.ini +%if %{with python2} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/python fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gevent fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/tornado fedora +%endif +%if %{with python3} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado +%endif +%if %{with python3_other} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/python fedora python%{python3_other_pkgversion} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent +%endif +%if %{with mongodblibs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongodblog fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +%endif +%if %{with mono} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mono fedora +%endif +%if %{with v8} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/v8 fedora +%endif +%if %{with go} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gccgo fedora +%endif +%if %{with ruby19} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/fiber fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/rbthreads fedora +%endif +%if %{with systemd} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/systemd_logger fedora +%endif +%if %{with tuntap} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/tuntap fedora +%endif +%if %{with perl} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/psgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/coroae fedora +%endif +%if %{with zeromq} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/logzmq fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongrel2 fedora +%endif +%if %{with python2_greenlet} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora +%endif +%if %{with python3} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet +%endif +%if %{with glusterfs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/glusterfs fedora +%endif +%if %{with gridfs} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gridfs fedora +%endif +%if %{with java} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jvm fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jwsgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/ring fedora +%endif +%if %{with tcp_wrappers} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/router_access fedora +%endif +%if %{with mod_proxy_uwsgi} +%{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c +%endif + + +%install +install -d %{buildroot}%{_sysconfdir}/uwsgi.d +install -d %{buildroot}%{_usrsrc}/uwsgi/%{version} +install -d %{buildroot}%{_includedir}/uwsgi +install -d %{buildroot}%{_libdir}/uwsgi +%if %{without systemd} +install -d -m 0775 %{buildroot}%{_localstatedir}/run/uwsgi +%endif +%if %{with mono} +install -d %{buildroot}%{_monogacdir} +%endif +mkdir docs +tar -C docs/ --strip-components=1 -xvzf %{SOURCE4} +tar -C %{buildroot}%{_usrsrc}/uwsgi/%{version} --strip-components=1 -xvzf %{SOURCE0} +cp %{SOURCE1} %{buildroot}%{_usrsrc}/uwsgi/%{version}/buildconf/ +cp docs/Changelog-%{version}.rst CHANGELOG +rm -f docs/.gitignore +echo "%{commit}, i.e. this:" >> README.Fedora +echo "https://github.com/unbit/%{docrepo}/tree/%{commit}" >> README.Fedora +install -D -p -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi +install -p -m 0644 *.h %{buildroot}%{_includedir}/uwsgi +install -p -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi +%if %{with python2} +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python2_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 +%py_byte_compile %{__python2} %{buildroot}%{python2_sitelib}/uwsgidecorators.py +%endif +%endif +%if %{with python3} +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 +%py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/uwsgidecorators.py +%endif +%endif +%if %{with python3_other} +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 +%py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py +%endif +%endif +%if %{with java} +install -D -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir}/uwsgi.jar +%endif +%if %{with mono} +gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib +%endif +install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini +%if %{with systemd} +install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service +install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf +%else +install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi +%endif +%if %{with mod_proxy_uwsgi} +install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so +%endif + + +%pre +getent group uwsgi >/dev/null || groupadd -r uwsgi +getent passwd uwsgi >/dev/null || \ + useradd -r -g uwsgi -d %{!?with_systemd:%{_localstatedir}}/run/uwsgi -s /sbin/nologin \ + -c "uWSGI daemon user" uwsgi +exit 0 + +%post +%if %{with systemd} +echo "Executing systemd post-install tasks" +%if 0%{?systemd_post:1} + %systemd_post uwsgi.service +%else + if [ $1 -eq 1 ] ; then + # Initial installation + /bin/systemctl daemon-reload >/dev/null 2>&1 || : + fi +%endif +%else +echo "Executing System V post-install tasks" +/sbin/chkconfig --add uwsgi +%endif + +%preun +%if %{with systemd} +echo "Executing systemd pre-uninstall tasks" +%if 0%{?systemd_preun:1} + %systemd_preun uwsgi.service +%else + if [ $1 -eq 0 ] ; then + # Package removal, not upgrade + /bin/systemctl --no-reload disable uwsgi.service > /dev/null 2>&1 || : + /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : + fi +%endif +%else +echo "Executing System V pre-uninstall tasks" +if [ $1 -eq 0 ] ; then + /sbin/service uwsgi stop >/dev/null 2>&1 + /sbin/chkconfig --del uwsgi +fi +%endif + +%postun +%if %{with systemd} +echo "Executing systemd post-uninstall tasks" +%if 0%{?systemd_postun:1} + %systemd_postun uwsgi.service +%else + /bin/systemctl daemon-reload >/dev/null 2>&1 || : + if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : + fi +%endif +%else +echo "Executing System V post-uninstall tasks" +if [ "$1" -ge "1" ] ; then + /sbin/service uwsgi condrestart >/dev/null 2>&1 || : +fi +%endif + + +%files +%{_sbindir}/uwsgi +%config(noreplace) %{_sysconfdir}/uwsgi.ini +%if %{with systemd} +%{_unitdir}/uwsgi.service +%{_tmpfilesdir}/uwsgi.conf +%else +%{_initddir}/uwsgi +%endif +%dir %{_sysconfdir}/uwsgi.d +%if %{without systemd} +%attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi +%endif +%doc README README.Fedora CHANGELOG +%license LICENSE + +%files -n uwsgi-devel +%{_includedir}/uwsgi +%{_usrsrc}/uwsgi + +%if %{with python2} +%files -n python2-uwsgidecorators +%{python2_sitelib}/uwsgidecorators.py* +%endif + +%if %{with python3} +%files -n python%{python3_pkgversion}-uwsgidecorators +%{python3_sitelib}/uwsgidecorators.py +%{python3_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_version_nodots}*.py* +%endif + +%if %{with python3_other} +%files -n python%{python3_other_pkgversion}-uwsgidecorators +%{python3_other_sitelib}/uwsgidecorators.py +%{python3_other_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_other_version_nodots}*.py* +%endif + +%files -n uwsgi-docs +%doc docs + +%files -n uwsgi-plugin-common +%dir %{_libdir}/uwsgi +%{_libdir}/uwsgi/http_plugin.so +%{_libdir}/uwsgi/cgi_plugin.so + +# Stats pushers + +%files -n uwsgi-stats-pusher-file +%{_libdir}/uwsgi/stats_pusher_file_plugin.so + +%if %{with mongodblibs} +%files -n uwsgi-stats-pusher-mongodb +%{_libdir}/uwsgi/stats_pusher_mongodb_plugin.so +%endif + +%files -n uwsgi-stats-pusher-socket +%{_libdir}/uwsgi/stats_pusher_socket_plugin.so + +%files -n uwsgi-stats-pusher-statsd +%{_libdir}/uwsgi/stats_pusher_statsd_plugin.so + +%files -n uwsgi-stats-pusher-zabbix +%{_libdir}/uwsgi/zabbix_plugin.so + +# Alarms + +%files -n uwsgi-alarm-curl +%{_libdir}/uwsgi/alarm_curl_plugin.so + +%files -n uwsgi-alarm-xmpp +%{_libdir}/uwsgi/alarm_xmpp_plugin.so + +# Transformations + +%files -n uwsgi-transformation-chunked +%{_libdir}/uwsgi/transformation_chunked_plugin.so + +%files -n uwsgi-transformation-gzip +%{_libdir}/uwsgi/transformation_gzip_plugin.so + +%files -n uwsgi-transformation-offload +%{_libdir}/uwsgi/transformation_offload_plugin.so + +%files -n uwsgi-transformation-template +%{_libdir}/uwsgi/transformation_template_plugin.so + +%files -n uwsgi-transformation-tofile +%{_libdir}/uwsgi/transformation_tofile_plugin.so + +%files -n uwsgi-transformation-toupper +%{_libdir}/uwsgi/transformation_toupper_plugin.so + +# Loggers + +%files -n uwsgi-log-encoder-msgpack +%{_libdir}/uwsgi/msgpack_plugin.so + +%files -n uwsgi-logger-crypto +%{_libdir}/uwsgi/logcrypto_plugin.so + +%files -n uwsgi-logger-file +%{_libdir}/uwsgi/logfile_plugin.so + +%files -n uwsgi-logger-graylog2 +%{_libdir}/uwsgi/graylog2_plugin.so + +%if %{with mongodblibs} +%files -n uwsgi-logger-mongodb +%{_libdir}/uwsgi/mongodblog_plugin.so +%endif + +%files -n uwsgi-logger-pipe +%{_libdir}/uwsgi/logpipe_plugin.so + +%files -n uwsgi-logger-redis +%{_libdir}/uwsgi/redislog_plugin.so + +%files -n uwsgi-logger-rsyslog +%{_libdir}/uwsgi/rsyslog_plugin.so + +%files -n uwsgi-logger-socket +%{_libdir}/uwsgi/logsocket_plugin.so + +%files -n uwsgi-logger-syslog +%{_libdir}/uwsgi/syslog_plugin.so + +%if %{with systemd} +%files -n uwsgi-logger-systemd +%{_libdir}/uwsgi/systemd_logger_plugin.so +%endif + +%if %{with zeromq} +%files -n uwsgi-logger-zeromq +%{_libdir}/uwsgi/logzmq_plugin.so +%endif + +# Plugins + +%files -n uwsgi-plugin-airbrake +%{_libdir}/uwsgi/airbrake_plugin.so + +%files -n uwsgi-plugin-cache +%{_libdir}/uwsgi/cache_plugin.so + +%files -n uwsgi-plugin-carbon +%{_libdir}/uwsgi/carbon_plugin.so + +%if %{with perl} +%files -n uwsgi-plugin-psgi +%{_libdir}/uwsgi/psgi_plugin.so + +%files -n uwsgi-plugin-coroae +%{_libdir}/uwsgi/coroae_plugin.so +%endif + +%files -n uwsgi-plugin-cheaper-busyness +%{_libdir}/uwsgi/cheaper_busyness_plugin.so + +%files -n uwsgi-plugin-cplusplus +%{_libdir}/uwsgi/cplusplus_plugin.so + +%files -n uwsgi-plugin-curl-cron +%{_libdir}/uwsgi/curl_cron_plugin.so + +%files -n uwsgi-plugin-dumbloop +%{_libdir}/uwsgi/dumbloop_plugin.so + +%files -n uwsgi-plugin-dummy +%{_libdir}/uwsgi/dummy_plugin.so + +%if %{with ruby19} +%files -n uwsgi-plugin-fiber +%{_libdir}/uwsgi/fiber_plugin.so +%endif + +%if %{with go} +%files -n uwsgi-plugin-gccgo +%{_libdir}/uwsgi/gccgo_plugin.so +%endif + +%files -n uwsgi-plugin-geoip +%{_libdir}/uwsgi/geoip_plugin.so + +%if %{with python2} +%files -n uwsgi-plugin-python2-gevent +%{_libdir}/uwsgi/gevent_plugin.so +%endif + +%if %{with python3} +%files -n uwsgi-plugin-python%{python3_pkgversion}-gevent +%{_libdir}/uwsgi/python%{python3_pkgversion}_gevent_plugin.so +%endif + +%if %{with python3_other} +%files -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent +%{_libdir}/uwsgi/python%{python3_other_pkgversion}_gevent_plugin.so +%endif + +%if %{with glusterfs} +%files -n uwsgi-plugin-glusterfs +%{_libdir}/uwsgi/glusterfs_plugin.so +%endif + +%if %{with python2_greenlet} +%files -n uwsgi-plugin-python2-greenlet +%{_libdir}/uwsgi/greenlet_plugin.so +%endif + +%if %{with python3} +%files -n uwsgi-plugin-python%{python3_pkgversion}-greenlet +%{_libdir}/uwsgi/python%{python3_pkgversion}_greenlet_plugin.so +%endif + +%if %{with gridfs} +%files -n uwsgi-plugin-gridfs +%{_libdir}/uwsgi/gridfs_plugin.so +%endif + +%if %{with java} +%files -n uwsgi-plugin-jvm +%{_libdir}/uwsgi/jvm_plugin.so +%{_javadir}/uwsgi.jar + +%files -n uwsgi-plugin-jwsgi +%{_libdir}/uwsgi/jwsgi_plugin.so +%endif + +%files -n uwsgi-plugin-ldap +%{_libdir}/uwsgi/ldap_plugin.so + +%files -n uwsgi-plugin-lua +%{_libdir}/uwsgi/lua_plugin.so + +%if %{with zeromq} +%files -n uwsgi-plugin-mongrel2 +%{_libdir}/uwsgi/mongrel2_plugin.so +%endif + +%if %{with mono} +%files -n uwsgi-plugin-mono +%{_libdir}/uwsgi/mono_plugin.so +%{_monodir}/uwsgi/ +%{_monogacdir}/uwsgi/ +%endif + +%files -n uwsgi-plugin-nagios +%{_libdir}/uwsgi/nagios_plugin.so + +%files -n uwsgi-plugin-notfound +%{_libdir}/uwsgi/notfound_plugin.so + +%files -n uwsgi-plugin-pam +%{_libdir}/uwsgi/pam_plugin.so + +%files -n uwsgi-plugin-php +%{_libdir}/uwsgi/php_plugin.so + +%files -n uwsgi-plugin-pty +%{_libdir}/uwsgi/pty_plugin.so + +%if %{with python2} +%files -n uwsgi-plugin-python2 +%{_libdir}/uwsgi/python_plugin.so +%endif + +%if %{with python3} +%files -n uwsgi-plugin-python%{python3_pkgversion} +%{_libdir}/uwsgi/python%{python3_pkgversion}_plugin.so +%endif + +%if %{with python3_other} +%files -n uwsgi-plugin-python%{python3_other_pkgversion} +%{_libdir}/uwsgi/python%{python3_other_pkgversion}_plugin.so +%endif + +%files -n uwsgi-plugin-rack +%{_libdir}/uwsgi/rack_plugin.so + +%if %{with ruby19} +%files -n uwsgi-plugin-rbthreads +%{_libdir}/uwsgi/rbthreads_plugin.so +%endif + +%if %{with java} +%files -n uwsgi-plugin-ring +%{_libdir}/uwsgi/ring_plugin.so +%endif + +%files -n uwsgi-plugin-rrdtool +%{_libdir}/uwsgi/rrdtool_plugin.so + +%files -n uwsgi-plugin-rpc +%{_libdir}/uwsgi/rpc_plugin.so + +%files -n uwsgi-plugin-ruby +%{_libdir}/uwsgi/ruby19_plugin.so + +%files -n uwsgi-plugin-spooler +%{_libdir}/uwsgi/spooler_plugin.so + +%files -n uwsgi-plugin-sqlite3 +%{_libdir}/uwsgi/sqlite3_plugin.so + +%files -n uwsgi-plugin-ssi +%{_libdir}/uwsgi/ssi_plugin.so + +%if %{with python2} +%files -n uwsgi-plugin-python2-tornado +%{_libdir}/uwsgi/tornado_plugin.so +%endif + +%if %{with python3} +%files -n uwsgi-plugin-python%{python3_pkgversion}-tornado +%{_libdir}/uwsgi/python%{python3_pkgversion}_tornado_plugin.so +%endif + +%files -n uwsgi-plugin-ugreen +%{_libdir}/uwsgi/ugreen_plugin.so + +%if %{with v8} +%files -n uwsgi-plugin-v8 +%{_libdir}/uwsgi/v8_plugin.so +%endif + +%files -n uwsgi-plugin-webdav +%{_libdir}/uwsgi/webdav_plugin.so + +%files -n uwsgi-plugin-xattr +%{_libdir}/uwsgi/xattr_plugin.so + +%files -n uwsgi-plugin-xslt +%{_libdir}/uwsgi/xslt_plugin.so + +%files -n uwsgi-plugin-zergpool +%{_libdir}/uwsgi/zergpool_plugin.so + +# Routers + +%if %{with tcp_wrappers} +%files -n uwsgi-router-access +%{_libdir}/uwsgi/router_access_plugin.so +%endif + +%files -n uwsgi-router-basicauth +%{_libdir}/uwsgi/router_basicauth_plugin.so + +%files -n uwsgi-router-cache +%{_libdir}/uwsgi/router_cache_plugin.so + +%files -n uwsgi-router-expires +%{_libdir}/uwsgi/router_expires_plugin.so + +%files -n uwsgi-router-fast +%{_libdir}/uwsgi/fastrouter_plugin.so + +%files -n uwsgi-router-forkpty +%{_libdir}/uwsgi/forkptyrouter_plugin.so + +%files -n uwsgi-router-hash +%{_libdir}/uwsgi/router_hash_plugin.so + +%files -n uwsgi-router-http +%{_libdir}/uwsgi/router_http_plugin.so + +%files -n uwsgi-router-memcached +%{_libdir}/uwsgi/router_memcached_plugin.so + +%files -n uwsgi-router-metrics +%{_libdir}/uwsgi/router_metrics_plugin.so + +%files -n uwsgi-router-radius +%{_libdir}/uwsgi/router_radius_plugin.so + +%files -n uwsgi-router-raw +%{_libdir}/uwsgi/rawrouter_plugin.so + +%files -n uwsgi-router-redirect +%{_libdir}/uwsgi/router_redirect_plugin.so + +%files -n uwsgi-router-redis +%{_libdir}/uwsgi/router_redis_plugin.so + +%files -n uwsgi-router-rewrite +%{_libdir}/uwsgi/router_rewrite_plugin.so + +%files -n uwsgi-router-spnego +%{_libdir}/uwsgi/router_spnego_plugin.so + +%files -n uwsgi-router-ssl +%{_libdir}/uwsgi/sslrouter_plugin.so + +%files -n uwsgi-router-static +%{_libdir}/uwsgi/router_static_plugin.so + +%if %{with tuntap} +%files -n uwsgi-router-tuntap +%{_libdir}/uwsgi/tuntap_plugin.so +%endif + +%files -n uwsgi-router-uwsgi +%{_libdir}/uwsgi/router_uwsgi_plugin.so + +%files -n uwsgi-router-xmldir +%{_libdir}/uwsgi/router_xmldir_plugin.so + +# The rest + +%if %{with mod_proxy_uwsgi} +%files -n mod_proxy_uwsgi +%{_httpd_moddir}/mod_proxy_uwsgi.so +%endif + + +%changelog +* Fri Jun 04 2021 Python Maint - 2.0.18-18 +- Rebuilt for Python 3.10 + +* Fri May 21 2021 Jitka Plesnikova - 2.0.18-17 +- Perl 5.34 rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 2.0.18-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jan 06 2021 Mamoru TASAKA - 2.0.18-15 +- F-34: rebuild against ruby 3.0 + +* Tue Sep 15 2020 Miro Hrončok - 2.0.18-14 +- Rebuilt for libevent soname change + +* Sat Aug 01 2020 Fedora Release Engineering - 2.0.18-13 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 2.0.18-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Thu Jun 25 2020 Jitka Plesnikova - 2.0.18-11 +- Perl 5.32 rebuild + +* Sun May 31 2020 Björn Esser - 2.0.18-10 +- Rebuild (gloox) + +* Tue May 26 2020 Miro Hrončok - 2.0.18-9 +- Rebuilt for Python 3.9 + +* Tue May 12 2020 Jorge A Gallegos - 2.0.18-8 +- Patching PHP plugin to fix Zend framework + +* Mon Apr 27 2020 Jorge A Gallegos - 2.0.18-7 +- Re-introducing tmpfiles.d (Jorge Gallegos) + +* Tue Apr 07 2020 Jorge A Gallegos - 2.0.18-6 +- change mkdirs for install -d (Jorge Gallegos) +- Fix python plugins provides BZ 1628147 (Jorge Gallegos) +- Add a fix for psgi + GCC10 BZ 1794335 (Jorge Gallegos) +- Move path options outside main config BZ 1687403 (Jorge Gallegos) + +* Fri Jan 31 2020 Fedora Release Engineering - 2.0.18-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Jan 18 2020 Mamoru TASAKA - 2.0.18-4 +- F-32: rebuild against ruby27 + +* Mon Aug 19 2019 Miro Hrončok - 2.0.18-3 +- Rebuilt for Python 3.8 + +* Sat Jul 27 2019 Fedora Release Engineering - 2.0.18-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jun 19 2019 Carl George - 2.0.18-1 +- Latest upstream +- Use openssl everywhere, instead of compat-openssl10 on F26+ +- Disable python2 subpackages on F31+ + +* Fri May 31 2019 Jitka Plesnikova - 2.0.17.1-12 +- Perl 5.30 rebuild + +* Wed Apr 03 2019 Carl George - 2.0.17.1-11 +- Re-enable mono plugins on ppc64le + +* Tue Mar 26 2019 Carl George - 2.0.17.1-10 +- Disable jvm plugin on Fedora and EL6 due to javapackages-tools retirement (apache-ivy orphanage) +- Disable v8 plugin on Fedora due to v8-314 retirement +- Disable mongo plugins on Fedora due to mongo-cxx-driver-legacy being broken in rawhide +- Disable mono plugins on ppc64le because mono-4.8.0-17 dropped that arch rhbz#1686983 + +* Mon Mar 18 2019 Remi Collet - 2.0.17.1-9 +- rebuild for libargon2 new soname + +* Sun Feb 03 2019 Fedora Release Engineering - 2.0.17.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Jan 21 2019 Mamoru TASAKA - 2.0.17.1-7 +- F-30: rebuild against ruby26 + +* Mon Jan 14 2019 Björn Esser - 2.0.17.1-6 +- Rebuilt for libcrypt.so.2 (#1666033) + +* Fri Nov 02 2018 Carl George - 2.0.17.1-5 +- Don't build python2-uwsgidecorators on F30+ +- BuildRequire mongo-cxx-driver-legacy-devel on F30+ + +* Wed Sep 12 2018 Carl George - 2.0.17.1-4 +- Drop mod_proxy_uwsgi subpackage on Fedora, as this module now provided by httpd rhbz#1574335 + +* Sat Jul 14 2018 Tadej Janež - 2.0.17.1-3 +- Re-enable greenlet plugin on EL7: + - Python 3 version is always built + - Python 2 version is only built on x86_64 + +* Thu Jul 12 2018 Carl George - 2.0.17.1-2 +- Make python2-uwsgidecorators own the right files (rhbz#1600721) +- Be more explicit with uwsgidecorators files +- Rebuilt to change main python from 3.4 to 3.6 + +* Mon Jul 09 2018 Carl George - 2.0.17.1-1 +- Latest upstream (rhbz#1549354) +- Enable uwsgi-plugin-coroae on EL7 +- Use systemd tmpfiles to create /run/uwsgi with group write permissions (rhbz#1427303) +- Use /var/run/uwsgi when not using systemd +- Build with versioned python command +- Remove %%config from systemd unit file +- Disable greenlet plugin on EL7 + +* Tue Jul 03 2018 Petr Pisar - 2.0.16-7 +- Perl 5.28 rebuild + +* Fri Jun 29 2018 Jitka Plesnikova - 2.0.16-6 +- Perl 5.28 rebuild + +* Wed Jun 27 2018 Tadej Janež - 2.0.16-5 +- Build Python 3 version(s) of gevent plugin on Fedora and EPEL7 +- Build Python 3 version of greenlet plugin on Fedora and EPEL7 +- Build Python 2 version of greenlet plugin on EPEL7 +- Always build Python 3 version of tornado plugin when building with Python 3 + (drop python3_tornado build conditional) + +* Tue Jun 26 2018 Tadej Janež - 2.0.16-4 +- Modernize and generalize building of Python subpackages: + - replace python with python2 + - use appropriate macros for when refering to Python 3 + - prefix Python-dependent plugins with the version of Python they are built + with +- Also build Python 3 subpackages for the other Python 3 version in EPEL7 + +* Tue Jun 19 2018 Miro Hrončok - 2.0.16-3 +- Rebuilt for Python 3.7 + +* Tue Apr 03 2018 Till Maas - 2.0.16-2 +- Fix building in Rawhide (#1556525) (Jakub Jelen) +- Disable tcp_wrappers for Fedora 28 and newer (Jakub Jelen) + +* Tue Feb 13 2018 Jorge A Gallegos - 2.0.16-1 +- Conditionally disable router-access for tcp_wrappers deprecation (Jorge Gallegos) +- Updated to 2.0.16 which includes fix for CVE-2018-6758 (Jorge Gallegos) + +* Fri Feb 09 2018 Fedora Release Engineering - 2.0.15-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Jan 20 2018 Björn Esser - 2.0.15-8 +- Rebuilt for switch to libxcrypt + +* Tue Oct 03 2017 Remi Collet - 2.0.15-7 +- rebuild for https://fedoraproject.org/wiki/Changes/php72 + +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.15-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.15-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Jul 21 2017 Kalev Lember - 2.0.15-4 +- Rebuilt for Boost 1.64 + +* Fri Jul 07 2017 Igor Gnatenko - 2.0.15-3 +- Rebuild due to bug in RPM (RHBZ #1468476) + +* Sun Jun 04 2017 Jitka Plesnikova - 2.0.15-2 +- Perl 5.26 rebuild + +* Thu May 18 2017 Jorge A Gallegos - 2.0.15-1 +- Bumping release to 2.0.15 (Jorge Gallegos) +- Updating sources to 2.0.15 (Jorge Gallegos) + +* Mon Mar 20 2017 Carl George - 2.0.14-11 +- Add patch7 to add glib-2.0 pkg-config flags to mono build +- Filter uwgi plugins from automatic provides rhbz#1352089 + +* Wed Feb 15 2017 Igor Gnatenko - 2.0.14-10 +- Rebuild for brp-python-bytecompile + +* Wed Feb 08 2017 Carl George - 2.0.14-9 +- Rebuild for boost soname bump + +* Sun Feb 05 2017 Kalev Lember - 2.0.14-8 +- Rebuilt for libgo soname bump + +* Sun Jan 15 2017 Mamoru TASAKA - 2.0.14-7 +- Workaround for build issue on arm(32): explicitly write + java-1.8.0-openjdk-headless as BR not to use java-1.8.0-openjdk-aarch32 + which does not provide server/libjvm.so + +* Fri Jan 13 2017 Jorge A Gallegos - 2.0.14-6 +- Adding the cheaper_busyness plugin (Jorge Gallegos) +- Got tired of this giant string (Jorge Gallegos) + +* Fri Jan 13 2017 Mamoru TASAKA - 2.0.14-5 +- F-26: rebuild for ruby24 + +* Thu Dec 22 2016 Miro Hrončok - 2.0.14-4 +- Rebuild for Python 3.6 + +* Tue Dec 20 2016 Carl George - 2.0.14-3 +- Enable plugin-psgi on EL7 + +* Wed Nov 30 2016 Carl George - 2.0.14-2 +- uwsgi is not yet OpenSSL 1.1 compatible, build against compat-openssl10 on F26+ (Carl George) +- php plugin requires krb5 headers to build (Carl George) + +* Wed Oct 05 2016 Jorge A Gallegos - 2.0.14-1 +- Updated to latest upstream stable (Jorge Gallegos) +- Make subpackage interdependencies versioned for bz #1368488 (Jorge Gallegos) +- chmod uwsgi sock file for bz #1338038 (Jorge Gallegos) +- greenlet and gevent depend on python bz #1325524 (Jorge Gallegos) +- config(noreplace) for uwsgi.ini bz #1339558 (Jorge Gallegos) + +* Mon Aug 01 2016 Carl George - 2.0.13.1-2 +- Build against v8-314 on F25+ rhbz#1339293 +- Own /usr/src/uwsgi rhbz#1351796 + +* Thu Jul 28 2016 Jorge A Gallegos - 2.0.13.1-1 +- Bumped to latest stable + +* Tue Jul 19 2016 Fedora Release Engineering - 2.0.12-9 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Tue May 17 2016 Jitka Plesnikova - 2.0.12-8 +- Perl 5.24 rebuild + +* Tue Apr 12 2016 Peter Robinson 2.0.12-7 +- Mongodb doesn't depend on v8 anymore so is now supported on all LE arches + +* Fri Feb 05 2016 Fedora Release Engineering - 2.0.12-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Jan 29 2016 Jonathan Wakely - 2.0.12-5 +- Rebuilt for Boost 1.60 + +* Wed Jan 13 2016 Vít Ondruch - 2.0.12-4 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3 + +* Thu Jan 07 2016 Jorge A Gallegos - 2.0.12-3 +- Really fixing stats_pusher_mongodb (Jorge Gallegos) + +* Sat Jan 02 2016 Jorge A Gallegos - 2.0.12-2 +- Trying again with GCC + +* Thu Dec 31 2015 Jorge A Gallegos - 2.0.12-1 +- Adding the build profile to -devel subpackage (Jorge Gallegos) +- Fixing stats-pusher-mongo for gnu++11 (Jorge Gallegos) +- Using _mono macros instead of hardcoded paths (Jorge Gallegos) +- Modifying an old changelog entry for rpmlint (Jorge Gallegos) +- Making -devel not pull unnecessary deps (Jorge Gallegos) +- Adjusting rpath patch for new release (Jorge Gallegos) +- Updating to latest stable version 2.0.12 (Jorge Gallegos) + +* Fri Dec 11 2015 Ville Skyttä - 2.0.11.2-7 +- Don't build tornado3 for EL7 (no python3-tornado available yet) +- Fix EL7 ppc64le build + +* Sun Dec 6 2015 Peter Robinson 2.0.11.2-6 +- Fixing glusterfs for non x86_64 on el7 + +* Thu Nov 19 2015 Jorge A Gallegos - 2.0.11.2-5 +- Fixing manual brp-compiling in el6 + +* Wed Nov 18 2015 Jorge A Gallegos - 2.0.11.2-4 +- Fixing glusterfs for ppc64 + +* Tue Nov 17 2015 Jorge A Gallegos - 2.0.11.2-3 +- Fixing bz #1247395 - python3 plugin for epel7 +- Fixing bz #1261942 - daemonize properly in SystemV +- Fixing bz #1258388 - package uwsgidecorators +- Fixing bz #1242155 - glusterfs plugin for epel7 +- Fixing bz #1240236 - add source to -devel subpackage + +* Tue Nov 10 2015 Fedora Release Engineering - 2.0.11.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + +* Fri Nov 06 2015 Jorge A Gallegos - 2.0.11.2-1 +- With latest stable + +* Fri Aug 28 2015 Jonathan Wakely - 2.0.11.1-4 +- Rebuilt for Boost 1.59 + +* Wed Jul 29 2015 Fedora Release Engineering - 2.0.11.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 + +* Wed Jul 22 2015 David Tardon - 2.0.11.1-2 +- rebuild for Boost 1.58 + +* Tue Jul 21 2015 Jorge A Gallegos - 2.0.11.1-1 +- New emergency security release + +* Thu Jul 02 2015 Jorge A Gallegos - 2.0.11-1 +- Adding the dummy and notfound plugins (Jorge Gallegos) +- License is license (Jorge Gallegos) +- Mark config files as config (Jorge Gallegos) +- Adding sources for new version (Jorge Gallegos) +- uwsgi_fix_glibc_compatibility merged upstream (Jorge Gallegos) + +* Tue Jun 23 2015 Thomas Spura - 2.0.9-11 +- rebuilt for new zeromq 4.1.2 + +* Fri Jun 19 2015 Fedora Release Engineering - 2.0.9-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat Jun 06 2015 Jitka Plesnikova - 2.0.9-9 +- Perl 5.22 rebuild + +* Mon May 18 2015 Peter Robinson 2.0.9-8 +- Rebuild (mono4) + +* Thu Apr 23 2015 Jorge A Gallegos - 2.0.9-7 +- Disabled java related plugins (jvm, jwsgi, ring) in el6 ppc64 + +* Tue Apr 21 2015 Jorge A Gallegos - 2.0.9-6 +- Reworked the conditionals in the spec file +- Updated documentation +- Disabled PSGI for epel, builds fine but requirement is missing +- Reenabled systemd for epel7, dunno how I missed that one + +* Fri Apr 17 2015 Dan Horák - 2.0.9-5 +- conditionalize various subpackages depending on architectures (patch by Jakub Cajka) - #1211616 + +* Tue Apr 14 2015 Vít Ondruch - 2.0.9-4 +- Fix glibc and MongoDB compatibility. + +* Fri Mar 13 2015 Jorge A Gallegos - 2.0.9-3 +- Adding missing dist tag, have no clue at what point this got dropped :( + +* Thu Mar 12 2015 Jorge A Gallegos - 2.0.9-2 +- Making it arch specific due to missing dependencies in PPC (as per + https://fedoraproject.org/wiki/Packaging:Guidelines#BuildRequires) + +* Wed Mar 11 2015 Jorge A Gallegos - 2.0.9-1 +- EPEL 6 and EPEL 7 compatible +- Plugins not compatible with epel 6 are systemd, go, python3 based, ruby19 based, gridfs and tuntap +- Plugins not compatible with epel 7 are python3 based, zeromq, greenlet, coroae, glusterfs and gridfs + +* Fri Feb 27 2015 Jorge A Gallegos - 2.0.9-0 +- New version + +* Fri Jan 16 2015 Mamoru TASAKA - 2.0.7-3 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_2.2 + +* Thu Sep 18 2014 Jorge A Gallegos - 2.0.7-2 +- -plugin-http doesn't exist, is in -plugin-common (Jorge Gallegos) + +* Mon Sep 08 2014 Jorge A Gallegos - 2.0.7-1 +- I am just done now, and there's a new version out already. Go figure. + +* Sun Sep 07 2014 Jorge A Gallegos - 2.0.6-1 +- Adding -stats-pusher-zabbix (Jorge Gallegos) +- Adding -plugin-xslt (Jorge Gallegos) +- Adding -plugin-webdav (Jorge Gallegos) +- Adding -plugin-v8 (Jorge Gallegos) +- Adding -router-tuntap (Jorge Gallegos) +- Adding http transformation plugins (Jorge Gallegos) +- Adding -plugin-tornado and -plugin-tornado3 (Jorge Gallegos) +- Adding all -stats-pusher-* plugins (Jorge Gallegos) +- Adding -plugin-ssi (Jorge Gallegos) +- Adding -plugin-ldap (Jorge Gallegos) +- Adding -plugin-sqlite3 (Jorge Gallegos) +- Adding -plugin-spooler (Jorge Gallegos) +- Adding -plugin-jwsgi (Jorge Gallegos) +- Adding -plugin-ring (Jorge Gallegos) +- Adding -plugin-rbthreads (Jorge Gallegos) +- Adding -plugin-pty (Jorge Gallegos) +- Adding -log-encoder-msgpack (Jorge Gallegos) +- Adding -plugin-mono (Jorge Gallegos) +- Adding -plugin-mongrel2 (Jorge Gallegos) +- Adding -plugin-gridfs (Jorge Gallegos) +- Adding -logger-graylog2 (Jorge Gallegos) +- Adding -plugin-glusterfs (Jorge Gallegos) +- Adding -plugin-gevent (Jorge Gallegos) +- Adding -plugin-geoip (Jorge Gallegos) +- Adding -plugin-gccgo (Jorge Gallegos) +- Adding -plugin-fiber (Jorge Gallegos) +- Adding -plugin-dumbloop (Jorge Gallegos) +- Adding -plugin-curl-cron (Jorge Gallegos) +- Adding -plugin-cplusplus (Jorge Gallegos) +- Adding -plugin-coroae (Jorge Gallegos) +- Adding -alarm-xmpp (Jorge Gallegos) +- Adding -alarm-curl (Jorge Gallegos) +- Packaging -plugin-airbrake (Jorge Gallegos) +- Broke up -routers into its individual -router-* (Jorge Gallegos) +- Renaming -plugin-sslrouter to -router-ssl (Jorge Gallegos) +- Renaming -plugin-rawrouter to -router-raw (Jorge Gallegos) +- Splitting off the documentation to its subpackage (Jorge Gallegos) +- Splitting off some non-essential embedded plugins: (Jorge Gallegos) +- Splitting off -logger-syslog (Jorge Gallegos) +- Splitting off -logger-rsyslog (Jorge Gallegos) +- Splitting off -logger-redis (Jorge Gallegos) +- Splitting off -logger-mongodb (Jorge Gallegos) +- Splitting off -logger-socket (Jorge Gallegos) +- Splitting off -logger-file (Jorge Gallegos) +- Splitting off -logger-pipe (Jorge Gallegos) +- Splitting off -logger-crypto instead (Jorge Gallegos) +- Break out the major/minor/release numbers properly (Jorge Gallegos) +- Reorganized spec, alphabetical and type (Jorge Gallegos) +- Splitting -router-fastrouter out of -common (Jorge Gallegos) +- Splitting out the README, I will be putting more stuff in here (Jorge Gallegos) +- Adding -logger-systemd plugin (Jorge Gallegos) +- Adding -logger-zeromq plugin (Jorge Gallegos) +- Adding new sources for newest stable (Jorge Gallegos) + +* Mon Aug 18 2014 Fedora Release Engineering - 1.9.19-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Thu Jun 19 2014 Remi Collet - 1.9.19-5 +- rebuild for https://fedoraproject.org/wiki/Changes/Php56 + +* Sun Jun 08 2014 Fedora Release Engineering - 1.9.19-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed May 28 2014 Kalev Lember - 1.9.19-3 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 + +* Tue Apr 29 2014 Vít Ondruch - 1.9.19-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.1 + +* Tue Nov 12 2013 Jorge A Gallegos - 1.9.19-1 +- Updating to latest stable, uploading new sources (Jorge Gallegos) +- Forgot to delete the jvm arm patch file (Jorge Gallegos) + +* Sun Oct 20 2013 Jorge A Gallegos - 1.9.18.2-1 +- The changelog entry must match major + minor (Jorge Gallegos) +- Adding more ignore entries (Jorge Gallegos) +- The jvm arm patch has been merged upstream (Jorge Gallegos) +- Updated license to 'GPLv2 with exceptions' (Jorge Gallegos) +- Ugh messed up the doc sha (Jorge Gallegos) +- Adding new sources, bumping up spec to 1.9.18.2 (Jorge Gallegos) + +* Sat Oct 19 2013 Jorge A Gallegos - 1.9.18.2-0 +- Breaking up full version in 3 parts (Jorge Gallegos) +- Update to latest stable 1.9.18.2 (Jorge Gallegos) +- Forgot to disable debug mode (Jorge Gallegos) + +* Wed Oct 09 2013 Jorge A Gallegos - 1.9.17-2 +- Uploaded new sources per spec rework (Jorge Gallegos) +- Adding more router plugins (Jorge Gallegos) +- Adding mod_proxy_uwsgi apache module (Jorge Gallegos) +- Complying with the guidelines for source urls (Jorge Gallegos) +- The settings in the service file were right before (Jorge Gallegos) +- Enabling stats log socket, and capabilities (Jorge Gallegos) + +* Thu Oct 03 2013 Jorge A Gallegos - 1.9.17-1 +- Copying the version changelog to top-level doc +- Compile with POSIX capabilities +- Embed the loggers into the binary itself, no need for an extra package +- Patching jvm plugin to support arm + +* Wed Oct 02 2013 Jorge A Gallegos - 1.9.17-0 +- Rebuilt for version 1.9.17 +- Pulling in new documentation from https://github.com/unbit/uwsgi-docs + +* Sun Aug 04 2013 Fedora Release Engineering - 1.9.8-1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue Apr 23 2013 Jorge A Gallegos - 1.9.8-0 +- Rebuilt with latest stable version from upstream + +* Thu Apr 11 2013 Jorge A Gallegos - 1.9.5-0 +- Rebuilt with latest stable version from upstream +- Added Erlang, PAM and JVM plugins +- Added router-related plugins +- Added logger plugins + +* Tue Apr 02 2013 Vít Ondruch - 1.2.6-10 +- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 + +* Sat Mar 23 2013 Remi Collet - 1.2.6-9 +- rebuild for http://fedoraproject.org/wiki/Features/Php55 + +* Fri Feb 15 2013 Fedora Release Engineering - 1.2.6-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Feb 14 2013 Jorge A Gallegos - 1.2.6-7 +- Tyrant mode shouldn't be used here, tyrant mode is root-only + +* Thu Dec 27 2012 Jorge A Gallegos - 1.2.6-6 +- Systemd now supports an exit status directive, fixing bugz 873382 + +* Fri Nov 9 2012 Remi Collet - 1.2.6-5 +- rebuild against new php embedded library soname (5.4) + +* Thu Oct 18 2012 Remi Collet - 1.2.6-4 +- rebuild for new PHP 5.4.8 + +* Wed Sep 19 2012 Jorge A Gallegos - 1.2.6-3 +- Dropped requirement on PHP for the PHP plugin + +* Sat Sep 15 2012 Jorge A Gallegos - 1.2.6-2 +- Rebuilt with new systemd macros + +* Sun Sep 09 2012 Jorge A Gallegos - 1.2.6-1 +- Updated to latest stable from upstream + +* Sat Aug 04 2012 David Malcolm - 1.2.4-4 +- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 + +* Sun Jul 22 2012 Fedora Release Engineering - 1.2.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Sun Jul 08 2012 Jorge A Gallegos - 1.2.4-1 +- Updated to latest stable from upstream + +* Tue Jun 26 2012 Jorge A Gallegos - 1.2.3-1 +- Updated to latest stable upstream +- Building the pytho3 plugin is a bit trickier now, but still possible +- Added PHP plugin +- Added Carbon plugin +- Added RRDTool plugin +- Added rsyslog plugin +- Added syslog plugin + +* Sun Feb 19 2012 Jorge A Gallegos - 1.0.4-1 +- Addressing issues from package review feedback +- s/python-devel/python2-devel +- Make the libdir subdir owned by -plugins-common +- Upgraded to latest stable upstream version + +* Mon Feb 06 2012 Jorge A Gallegos - 1.0.2.1-2 +- Fixing 'unstripped-binary-or-object' + +* Thu Jan 19 2012 Jorge A Gallegos - 1.0.2.1-1 +- New upstream version + +* Thu Dec 08 2011 Jorge A Gallegos - 0.9.9.3-1 +- New upstream version + +* Sun Oct 09 2011 Jorge A Gallegos - 0.9.9.2-2 +- Don't download the wiki page at build time + +* Sun Oct 09 2011 Jorge A Gallegos - 0.9.9.2-1 +- Updated to latest stable version +- Correctly linking plugin_dir +- Patches 1 and 2 were addressed upstream + +* Sun Aug 21 2011 Jorge A Gallegos - 0.9.8.3-3 +- Got rid of BuildRoot +- Got rid of defattr() + +* Sun Aug 14 2011 Jorge Gallegos - 0.9.8.3-2 +- Added uwsgi_fix_rpath.patch +- Backported json_loads patch to work with jansson 1.x and 2.x +- Deleted clean steps since they are not needed in fedora + +* Sun Jul 24 2011 Jorge Gallegos - 0.9.8.3-1 +- rebuilt +- Upgraded to latest stable version 0.9.8.3 +- Split packages + +* Sun Jul 17 2011 Jorge Gallegos - 0.9.6.8-2 +- Heavily modified based on Oskari's work + +* Mon Feb 28 2011 Oskari Saarenmaa - 0.9.6.8-1 +- Initial. diff --git a/uwsgi.tmpfiles b/uwsgi.tmpfiles new file mode 100644 index 0000000..293cea5 --- /dev/null +++ b/uwsgi.tmpfiles @@ -0,0 +1 @@ +d /run/uwsgi 0775 uwsgi uwsgi diff --git a/uwsgi_fix_lua.patch b/uwsgi_fix_lua.patch new file mode 100644 index 0000000..e2ef54d --- /dev/null +++ b/uwsgi_fix_lua.patch @@ -0,0 +1,31 @@ +diff --git a/plugins/lua/uwsgiplugin.py b/plugins/lua/uwsgiplugin.py +index 8aaa95b..d0e3cd0 100644 +--- a/plugins/lua/uwsgiplugin.py ++++ b/plugins/lua/uwsgiplugin.py +@@ -3,7 +3,7 @@ import os,sys + LUAINC = os.environ.get('UWSGICONFIG_LUAINC') + LUALIB = os.environ.get('UWSGICONFIG_LUALIB') + LUALIBPATH = os.environ.get('UWSGICONFIG_LUALIBPATH') +-LUAPC = os.environ.get('UWSGICONFIG_LUAPC', 'lua5.1') ++LUAPC = os.environ.get('UWSGICONFIG_LUAPC', 'lua') + + # we LUAINC/LUALIB/LUALIBPATH override the LUAPC for backwards compat + if LUAINC: +@@ -12,7 +12,7 @@ else: + try: + CFLAGS = os.popen('pkg-config --cflags %s' % LUAPC).read().rstrip().split() + except: +- CFLAGS = ['-I/usr/include/lua5.1'] ++ CFLAGS = ['-I/usr/include/lua'] + + if LUALIB: + LIBS = ['-l%s' % LUALIB] +@@ -20,7 +20,7 @@ else: + try: + LIBS = os.popen('pkg-config --libs %s' % LUAPC).read().rstrip().split() + except: +- LIBS = ['-llua5.1'] ++ LIBS = ['-llua'] + + if LUALIBPATH: + LDFLAGS = ['-L%s' % LUALIBPATH] diff --git a/uwsgi_fix_mongodb.patch b/uwsgi_fix_mongodb.patch new file mode 100644 index 0000000..8b7b366 --- /dev/null +++ b/uwsgi_fix_mongodb.patch @@ -0,0 +1,269 @@ +From 83752e472c35632174534763dffd312fc120a429 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= + =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= + +Date: Fri, 10 Apr 2015 22:56:59 +0400 +Subject: [PATCH 1/3] Updated GridFS plugin to work with legacy + mongo-cxx-driver version 1.0.0 + +--- + plugins/gridfs/gridfs.cc | 53 +++++++++++++++++++++++++++++++++---------- + plugins/gridfs/uwsgiplugin.py | 7 +++--- + 2 files changed, 45 insertions(+), 15 deletions(-) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index d11451a..81ff0d9 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -1,3 +1,7 @@ ++#include ++#include ++#include ++ + #include + + #include +@@ -7,6 +11,7 @@ struct uwsgi_gridfs_mountpoint { + char *mountpoint; + uint16_t mountpoint_len; + char *server; ++ char *replica; + char *db; + char *timeout_str; + int timeout; +@@ -21,6 +26,7 @@ struct uwsgi_gridfs_mountpoint { + uint16_t prefix_len; + char *username; + char *password; ++ std::vector servers; + }; + + struct uwsgi_gridfs { +@@ -38,33 +44,44 @@ extern struct uwsgi_server uwsgi; + extern struct uwsgi_plugin gridfs_plugin; + + static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_mountpoint *ugm, char *itemname, int need_free) { +- + try { +- mongo::scoped_ptr conn( mongo::ScopedDbConnection::getScopedDbConnection(ugm->server, ugm->timeout) ); ++ std::unique_ptr conn; ++ ++ if (ugm->replica) { ++ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); ++ dynamic_cast(conn.get())->connect(); ++ } ++ else { ++ conn = std::unique_ptr (new mongo::DBClientConnection()); ++ dynamic_cast(conn.get())->connect(ugm->server); ++ } ++ + try { + if (ugm->username && ugm->password) { + std::string errmsg; +- if ((*conn).conn().auth(ugm->db, ugm->username, ugm->password, errmsg)) { ++ if (!conn->auth(ugm->db, ugm->username, ugm->password, errmsg)) { + uwsgi_log("[uwsgi-gridfs]: %s\n", errmsg.c_str()); +- (*conn).done(); + uwsgi_403(wsgi_req); + return; + } + } +- mongo::GridFS gridfs((*conn).conn(), ugm->db); +- mongo::GridFile gfile = gridfs.findFile(itemname); ++ mongo::GridFS gridfs((*conn.get()), ugm->db); ++ mongo::GridFile gfile = gridfs.findFileByName(itemname); ++ + if (need_free) { + free(itemname); + itemname = NULL; + } ++ + if (!gfile.exists()) { +- (*conn).done(); + uwsgi_404(wsgi_req); + return; + } ++ + uwsgi_response_prepare_headers(wsgi_req, (char *)"200 OK", 6); + // first get the content_type (if possibile) + std::string filename = gfile.getFilename(); ++ + if (!ugm->no_mime) { + size_t mime_type_len = 0; + char *mime_type = uwsgi_get_mime_type((char *)filename.c_str(), filename.length(), &mime_type_len); +@@ -72,11 +89,13 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + uwsgi_response_add_content_type(wsgi_req, mime_type, mime_type_len); + } + } ++ + if (ugm->orig_filename) { + char *filename_header = uwsgi_concat3((char *)"inline; filename=\"", (char *)filename.c_str(), (char *)"\""); + uwsgi_response_add_header(wsgi_req, (char *)"Content-Disposition", 19, filename_header, 19 + filename.length()); + free(filename_header); + } ++ + uwsgi_response_add_content_length(wsgi_req, gfile.getContentLength()); + + char http_last_modified[49]; +@@ -90,7 +109,7 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + char *etag = uwsgi_concat3((char *)"\"", (char *)g_md5.c_str(), (char *)"\""); + uwsgi_response_add_header(wsgi_req, (char *)"ETag", 4, etag, 2+g_md5.length()); + free(etag); +- } ++ } + } + + if (ugm->md5) { +@@ -106,22 +125,20 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + int i; + for(i=0;i +Date: Fri, 10 Apr 2015 23:07:41 +0400 +Subject: [PATCH 2/3] Fixed server list parsing + +--- + plugins/gridfs/gridfs.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index 81ff0d9..f58d976 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -211,6 +211,10 @@ static struct uwsgi_gridfs_mountpoint *uwsgi_gridfs_add_mountpoint(char *arg, si + ugm->servers.push_back(mongo::HostAndPort(buffer.substr(0, pos))); + buffer.erase(0, pos + 1); + } ++ ++ if (!ugm->servers.size()) { ++ ugm->servers.push_back(mongo::HostAndPort(ugm->server)); ++ } + } + + return ugm; +-- +2.1.0 + + +From a870dbfb0dc4268cbcecf573765338ec5a52f195 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=D0=95=D0=B2=D0=B3=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=9F=D1=80?= + =?UTF-8?q?=D0=BE=D1=82=D0=BE=D0=B7=D0=B0=D0=BD=D0=BE=D0=B2?= + +Date: Fri, 10 Apr 2015 23:38:38 +0400 +Subject: [PATCH 3/3] Passing timeout argument to MongoDB connection + +--- + plugins/gridfs/gridfs.cc | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/plugins/gridfs/gridfs.cc b/plugins/gridfs/gridfs.cc +index f58d976..5f7c4ba 100644 +--- a/plugins/gridfs/gridfs.cc ++++ b/plugins/gridfs/gridfs.cc +@@ -48,14 +48,14 @@ static void uwsgi_gridfs_do(struct wsgi_request *wsgi_req, struct uwsgi_gridfs_m + std::unique_ptr conn; + + if (ugm->replica) { +- conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers)); ++ conn = std::unique_ptr (new mongo::DBClientReplicaSet(ugm->replica, ugm->servers, ugm->timeout)); + dynamic_cast(conn.get())->connect(); + } + else { +- conn = std::unique_ptr (new mongo::DBClientConnection()); ++ conn = std::unique_ptr (new mongo::DBClientConnection(true, 0, ugm->timeout)); + dynamic_cast(conn.get())->connect(ugm->server); + } +- ++ + try { + if (ugm->username && ugm->password) { + std::string errmsg; +-- +2.1.0 + diff --git a/uwsgi_fix_mono.patch b/uwsgi_fix_mono.patch new file mode 100644 index 0000000..217eb68 --- /dev/null +++ b/uwsgi_fix_mono.patch @@ -0,0 +1,15 @@ +diff -Naurp a/plugins/mono/uwsgiplugin.py b/plugins/mono/uwsgiplugin.py +--- a/plugins/mono/uwsgiplugin.py 2016-10-03 03:16:59.000000000 -0500 ++++ b/plugins/mono/uwsgiplugin.py 2017-03-20 16:18:54.917935286 -0500 +@@ -1,9 +1,9 @@ + import os + NAME='mono' + +-CFLAGS = os.popen('pkg-config --cflags mono-2').read().rstrip().split() ++CFLAGS = os.popen('pkg-config --cflags mono-2 glib-2.0').read().rstrip().split() + LDFLAGS = [] +-LIBS = os.popen('pkg-config --libs mono-2').read().rstrip().split() ++LIBS = os.popen('pkg-config --libs mono-2 glib-2.0').read().rstrip().split() + GCC_LIST = ['mono_plugin'] + + if os.uname()[0] == 'Darwin': diff --git a/uwsgi_fix_php74_zend.patch b/uwsgi_fix_php74_zend.patch new file mode 100644 index 0000000..a6f47e8 --- /dev/null +++ b/uwsgi_fix_php74_zend.patch @@ -0,0 +1,16 @@ +diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c +index 72c390223..1690fb60c 100644 +--- a/plugins/php/php_plugin.c ++++ b/plugins/php/php_plugin.c +@@ -1115,10 +1115,9 @@ int uwsgi_php_request(struct wsgi_request *wsgi_req) { + + SG(request_info).path_translated = wsgi_req->file; + ++ memset(&file_handle, 0, sizeof(zend_file_handle)); + file_handle.type = ZEND_HANDLE_FILENAME; + file_handle.filename = real_filename; +- file_handle.free_filename = 0; +- file_handle.opened_path = NULL; + + if (php_request_startup(TSRMLS_C) == FAILURE) { + uwsgi_500(wsgi_req); diff --git a/uwsgi_fix_psgi.patch b/uwsgi_fix_psgi.patch new file mode 100644 index 0000000..0c47dba --- /dev/null +++ b/uwsgi_fix_psgi.patch @@ -0,0 +1,38 @@ +diff --git a/plugins/psgi/psgi.h b/plugins/psgi/psgi.h +index 92e6b588..064041a2 100644 +--- a/plugins/psgi/psgi.h ++++ b/plugins/psgi/psgi.h +@@ -87,3 +87,5 @@ void uwsgi_perl_exec(char *); + + void uwsgi_perl_check_auto_reload(void); + void uwsgi_psgi_preinit_apps(void); ++ ++extern struct uwsgi_perl uperl; +diff --git a/plugins/psgi/psgi_loader.c b/plugins/psgi/psgi_loader.c +index 1e61f0e9..a9211185 100644 +--- a/plugins/psgi/psgi_loader.c ++++ b/plugins/psgi/psgi_loader.c +@@ -1,7 +1,6 @@ + #include "psgi.h" + + extern struct uwsgi_server uwsgi; +-struct uwsgi_perl uperl; + + extern struct uwsgi_plugin psgi_plugin; + +diff --git a/plugins/psgi/psgi_plugin.c b/plugins/psgi/psgi_plugin.c +index e1177be2..8ca0a2ed 100644 +--- a/plugins/psgi/psgi_plugin.c ++++ b/plugins/psgi/psgi_plugin.c +@@ -3,11 +3,7 @@ + extern char **environ; + extern struct uwsgi_server uwsgi; + +-#ifdef __APPLE__ +-extern struct uwsgi_perl uperl; +-#else + struct uwsgi_perl uperl; +-#endif + + struct uwsgi_plugin psgi_plugin; + diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch new file mode 100644 index 0000000..0333830 --- /dev/null +++ b/uwsgi_fix_rpath.patch @@ -0,0 +1,64 @@ +diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +index f39ad63..d9e95bb 100644 +--- a/plugins/jvm/uwsgiplugin.py ++++ b/plugins/jvm/uwsgiplugin.py +@@ -65,11 +65,6 @@ if "-framework JavaVM" in JVM_LIBPATH: + + GCC_LIST = ['jvm_plugin'] + +-if 'LD_RUN_PATH' in os.environ: +- os.environ['LD_RUN_PATH'] += ':' + JVM_LIBPATH[0][2:] +-else: +- os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:] +- + def post_build(config): + if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: + os._exit(1) +diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +index d930c44..273cdde 100644 +--- a/plugins/php/uwsgiplugin.py ++++ b/plugins/php/uwsgiplugin.py +@@ -19,7 +19,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() + + if ld_run_path: + LDFLAGS.append('-L%s' % ld_run_path) +- os.environ['LD_RUN_PATH'] = ld_run_path + + LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] + +diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py +index 843876f..69ae68f 100644 +--- a/plugins/python/uwsgiplugin.py ++++ b/plugins/python/uwsgiplugin.py +@@ -58,8 +58,6 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: + LDFLAGS.append("-L%s" % libdir) + LDFLAGS.append("-Wl,-rpath,%s" % libdir) + +- os.environ['LD_RUN_PATH'] = "%s" % libdir +- + LIBS.append('-lpython%s' % get_python_version()) + else: + LIBS = [] +diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +index 210b28e..06f5edd 100644 +--- a/plugins/rack/uwsgiplugin.py ++++ b/plugins/rack/uwsgiplugin.py +@@ -46,7 +46,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" + + if has_shared == 'yes': + LDFLAGS.append('-L' + libpath ) +- os.environ['LD_RUN_PATH'] = libpath + LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) + else: + rubylibdir = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['rubylibdir']\"").read().rstrip() +diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +index ecea48d..4f35984 100644 +--- a/plugins/ruby19/uwsgiplugin.py ++++ b/plugins/ruby19/uwsgiplugin.py +@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG + + libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() + LDFLAGS.append('-L' + libpath ) +-os.environ['LD_RUN_PATH'] = libpath + LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip().split() + diff --git a/uwsgi_ruby20_compatibility.patch b/uwsgi_ruby20_compatibility.patch new file mode 100644 index 0000000..b4bf20d --- /dev/null +++ b/uwsgi_ruby20_compatibility.patch @@ -0,0 +1,42 @@ +diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +index 2375bc9..b908417 100644 +--- a/plugins/rack/uwsgiplugin.py ++++ b/plugins/rack/uwsgiplugin.py +@@ -10,13 +10,14 @@ except: + rbconfig = 'Config' + + version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() +-v = version.split('.') + + GCC_LIST = ['rack_plugin', 'rack_api'] + +-if (v[0] == '1' and v[1] == '9') or v[0] >= '2': ++if version >= '1.9': + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() + CFLAGS.append('-DRUBY19') ++ if version >= '2.0': ++ CFLAGS.append('-DRUBY20') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: +diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +index 4f35984..156018f 100644 +--- a/plugins/ruby19/uwsgiplugin.py ++++ b/plugins/ruby19/uwsgiplugin.py +@@ -10,13 +10,14 @@ except: + rbconfig = 'Config' + + version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() +-v = version.split('.') + + GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api'] + +-if v[0] == '1' and v[1] == '9': ++if version >= '1.9': + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() + CFLAGS.append('-DRUBY19') ++ if version >= '2.0': ++ CFLAGS.append('-DRUBY20') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: diff --git a/uwsgi_trick_chroot_rpmbuild.patch b/uwsgi_trick_chroot_rpmbuild.patch new file mode 100644 index 0000000..c23c06f --- /dev/null +++ b/uwsgi_trick_chroot_rpmbuild.patch @@ -0,0 +1,16 @@ +diff --git a/uwsgiconfig.py b/uwsgiconfig.py +index 59393e1..e43f092 100644 +--- a/uwsgiconfig.py ++++ b/uwsgiconfig.py +@@ -1422,10 +1422,7 @@ def build_plugin(path, uc, cflags, ldflags, libs, name = None): + except: + pass + +- if uc: +- plugin_dest = uc.get('plugin_build_dir', uc.get('plugin_dir')) + '/' + name + '_plugin' +- else: +- plugin_dest = name + '_plugin' ++ plugin_dest = name + '_plugin' + + shared_flag = '-shared' + diff --git a/uwsgi_v8-314_compatibility.patch b/uwsgi_v8-314_compatibility.patch new file mode 100644 index 0000000..63df56f --- /dev/null +++ b/uwsgi_v8-314_compatibility.patch @@ -0,0 +1,12 @@ +diff -Naurp a/plugins/v8/uwsgiplugin.py b/plugins/v8/uwsgiplugin.py +--- a/plugins/v8/uwsgiplugin.py 2016-05-12 12:37:49.000000000 -0500 ++++ b/plugins/v8/uwsgiplugin.py 2016-08-01 22:56:50.969785338 -0500 +@@ -1,7 +1,7 @@ + import os + NAME='v8' + +-CFLAGS = ['-Wno-deprecated-declarations'] ++CFLAGS = ['-Wno-deprecated-declarations', '-I/usr/include/v8-3.14'] + LDFLAGS = [] + LIBS = ['-lstdc++', '-lv8'] + engine = os.environ.get('UWSGICONFIG_V8_ENGINE', '') From 8fe9ce38ddd3e5164952d98eb00501900ee5246b Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 2 Feb 2022 20:32:34 +0100 Subject: [PATCH 349/427] Update to 2.0.20 Fix build against PHP8 Remove support for EL6 General logic cleanup and removal of dead code from the spec file Add --verbose to build step to show compiler settings --- .gitignore | 2 + fedora.ini | 2 +- sources | 4 +- uwsgi-2.0.16-glfs.patch | 10 -- uwsgi.spec | 305 ++++++++++++++--------------------- uwsgi_fix_chroot_chdir.patch | 14 ++ uwsgi_fix_php74_zend.patch | 16 -- uwsgi_fix_php8.patch | 17 ++ uwsgi_fix_php_arginfo.patch | 43 +++++ uwsgi_fix_psgi.patch | 38 ----- uwsgi_fix_rpath.patch | 54 +++---- 11 files changed, 227 insertions(+), 278 deletions(-) delete mode 100644 uwsgi-2.0.16-glfs.patch create mode 100644 uwsgi_fix_chroot_chdir.patch delete mode 100644 uwsgi_fix_php74_zend.patch create mode 100644 uwsgi_fix_php8.patch create mode 100644 uwsgi_fix_php_arginfo.patch delete mode 100644 uwsgi_fix_psgi.patch diff --git a/.gitignore b/.gitignore index 943f260..fb9d183 100644 --- a/.gitignore +++ b/.gitignore @@ -46,3 +46,5 @@ /uwsgi-docs-32a8f73.tar.gz /uwsgi-2.0.18.tar.gz /uwsgi-docs-8d868ea.tar.gz +/uwsgi-2.0.20.tar.gz +/uwsgi-docs-9b4ef5f.tar.gz diff --git a/fedora.ini b/fedora.ini index 35298b8..c0ae6b4 100644 --- a/fedora.ini +++ b/fedora.ini @@ -35,7 +35,6 @@ plugins = airbrake, nagios, notfound, pam, - php, pty, rack, rawrouter, @@ -67,6 +66,7 @@ plugins = airbrake, stats_pusher_socket, stats_pusher_statsd, syslog, + systemd_logger, transformation_chunked, transformation_gzip, transformation_offload, diff --git a/sources b/sources index e8512e0..3e2395c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.18.tar.gz) = 6561703279bcc4a81311d033810ac066d0f113bab13b0942f3eef86cac29c584a6641b52476840d6895151aee5ed064ae2d03b18932cf7f47e62f4eeed76da61 -SHA512 (uwsgi-docs-8d868ea.tar.gz) = 1ebf9bbe42d7a67553ff1081a2322fc00c72b72fa52879bba3b7ce8d9f4934b5643d96444ce75559b9f7303be4cdc0453ae2b4d73f1fa13cfc32f69d522bc2f0 +SHA512 (uwsgi-2.0.20.tar.gz) = 22677a8ad1ea886e1a3a153f486474ce064a55e5b12515322345116980f699f4e2e73267f991c300d904284e06f265ea821e71ba3c97832b6f25705475b498ff +SHA512 (uwsgi-docs-9b4ef5f.tar.gz) = faacb571533c5e770cf5701e979efec44b042d8eda6051d79a65216067715d113168663e8fc0f84133fecaeecee3053b60a5f9ac7938558f40a6cae90cd79b52 diff --git a/uwsgi-2.0.16-glfs.patch b/uwsgi-2.0.16-glfs.patch deleted file mode 100644 index fc41c38..0000000 --- a/uwsgi-2.0.16-glfs.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -up uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs uwsgi-2.0.16/plugins/glusterfs/glusterfs.c ---- uwsgi-2.0.16/plugins/glusterfs/glusterfs.c.glfs 2018-04-03 14:35:48.099323330 +0200 -+++ uwsgi-2.0.16/plugins/glusterfs/glusterfs.c 2018-04-03 14:35:07.573068567 +0200 -@@ -1,5 +1,5 @@ - #include --#include -+#include - - extern struct uwsgi_server uwsgi; - diff --git a/uwsgi.spec b/uwsgi.spec index b734b5b..dd22c36 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 8d868eadfb460785a735030271afa233ac854763 +%global commit 9b4ef5fa68fe42929a5e5410165d36fcc7b2d2c7 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -8,18 +8,14 @@ # This is primarily built for fedora, make it easy right now %if 0%{?fedora} -%bcond_without systemd %bcond_without go -%if 0%{?fedora} < 31 -%bcond_without python2 -%bcond_without python2_greenlet -%endif %bcond_without python3 %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq %bcond_without perl %bcond_without glusterfs +%bcond_without php # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -45,41 +41,15 @@ #Fedora endif %endif -# Conditionally disable some things in epel6 -%if 0%{?rhel} == 6 -# javapackages-tools retired in epel (apache-ivy orphanage) -%bcond_with java -# el6 doesn't ship with systemd -%bcond_with systemd -# el6 doesn't have go -%bcond_with go -%bcond_without python2 -%bcond_without python2_greenlet -# el6 ships with ruby 1.8 but fiberloop/rbthreads needs 1.9 -%bcond_with ruby19 -# el6 doesn't have perl-PSGI -# el6 does have perl-Coro -%bcond_with perl -# el6 httpd does not include mod_proxy_uwsgi -%bcond_without mod_proxy_uwsgi -# this fails in el not sure why -%bcond_with gridfs -%bcond_with tuntap -%bcond_with mongodblibs -%global manual_py_compile 0 -%else -%global manual_py_compile 1 -%endif - # Conditionally enable/disable some things in epel7 %if 0%{?rhel} == 7 # el7 does have java %bcond_without java -# el7 does have systemd -%bcond_without systemd %bcond_without python2 %bcond_without python3 %bcond_without python3_other +# This only exists on EL7 +%bcond_without tcp_wrappers # el7 doesn't have zeromq %bcond_with zeromq # el7 does have python-greenlet, but only on x86_64 @@ -99,21 +69,53 @@ %endif # this fails in el7 not sure why %bcond_with gridfs +# EL7 PHP is too old +%bcond_with php %endif +# epel8 builds pretty similar to Fedora for now +%if 0%{?rhel} == 8 +%bcond_without go +%bcond_without python3 +%bcond_without ruby19 +%bcond_without tuntap +%bcond_without zeromq +%bcond_without perl +%bcond_without glusterfs +%bcond_without php +# javapackages-tools retired (apache-ivy orphanage) +%bcond_with java +# Fedora httpd includes mod_proxy_uwsgi +# https://bugzilla.redhat.com/show_bug.cgi?id=1574335 +%bcond_with mod_proxy_uwsgi +#mono +%ifarch %{mono_arches} +%bcond_without mono +%else +%bcond_with mono +%endif +# mongodblibs +# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 +%bcond_with mongodblibs +# v8-314 retired +%bcond_with v8 +#mongodblibs dependency +%if %{without mongodblibs} +%bcond_with gridfs +%else +%bcond_without gridfs +%endif +#EL8 endif +%endif + +%global manual_py_compile 1 + # Turn off byte compilation so it doesn't try # to auto-optimize the code in /usr/src/uwsgi %if %{manual_py_compile} == 1 %global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') %endif -# Disable router_access in fedora >= 28 because tcp_wrappers deprecation -%if 0%{?fedora} >= 28 -%bcond_with tcp_wrappers -%else -%bcond_without tcp_wrappers -%endif - # Set %%__python to the newest possible version %if %{with python3} %global __python %{__python3} @@ -130,8 +132,8 @@ %endif Name: uwsgi -Version: 2.0.18 -Release: 18%{?dist} +Version: 2.0.20 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -144,7 +146,6 @@ Source2: uwsgi.service Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Source5: README.Fedora -Source6: uwsgi.init Source7: uwsgi.tmpfiles Patch0: uwsgi_trick_chroot_rpmbuild.patch @@ -155,12 +156,11 @@ Patch3: uwsgi_fix_lua.patch Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch -# https://github.com/unbit/uwsgi/pull/1772 -Patch9: uwsgi-2.0.16-glfs.patch -# https://github.com/unbit/uwsgi/pull/2141 -Patch10: uwsgi_fix_psgi.patch -# https://github.com/unbit/uwsgi/pull/2105 -Patch11: uwsgi_fix_php74_zend.patch +# https://github.com/unbit/uwsgi/issues/2283 +Patch12: uwsgi_fix_php8.patch +Patch13: uwsgi_fix_chroot_chdir.patch +# https://github.com/unbit/uwsgi/issues/2356 +Patch14: uwsgi_fix_php_arginfo.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -175,7 +175,6 @@ BuildRequires: python-greenlet-devel %endif %if %{with python3} BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-greenlet-devel %endif %if %{with python3_other} @@ -185,7 +184,10 @@ BuildRequires: python%{python3_other_pkgversion}-devel BuildRequires: glusterfs-devel, glusterfs-api-devel %endif BuildRequires: lua-devel, ruby, pcre-devel -BuildRequires: php-devel, php-embedded, libedit-devel, krb5-devel +%if %{with php} +BuildRequires: php-devel, php-embedded +%endif +BuildRequires: libedit-devel, krb5-devel BuildRequires: openssl-devel BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: sqlite-devel, libcap-devel @@ -203,28 +205,26 @@ BuildRequires: zeromq-devel %if %{with go} BuildRequires: gcc-go %endif -%if %{with systemd} BuildRequires: systemd-devel, systemd-units -%endif %if %{with mono} BuildRequires: mono-devel, mono-web, glib2-devel %endif %if %{with v8} -%if 0%{?fedora} >= 25 +%if 0%{?fedora} BuildRequires: v8-314-devel %else BuildRequires: v8-devel %endif %endif %if %{with mongodblibs} -%if 0%{?fedora} >= 30 +%if 0%{?fedora} BuildRequires: mongo-cxx-driver-legacy-devel %else BuildRequires: mongo-cxx-driver-devel %endif %endif -%if 0%{?fedora} >= 28 +%if 0%{?fedora} BuildRequires: libargon2-devel Obsoletes: uwsgi-router-access <= 2.0.16 %endif @@ -235,13 +235,7 @@ Obsoletes: uwsgi-plugin-erlang <= 1.9.20-1 Obsoletes: uwsgi-plugin-admin <= 2.0.6 Requires(pre): shadow-utils -%if %{with systemd} %{?systemd_requires} -%else -Requires(post): chkconfig -Requires(preun): chkconfig -Requires(preun): initscripts -%endif %filter_requires_in %{_usrsrc} %filter_provides_in %{_usrsrc} @@ -293,7 +287,8 @@ Provides: python3-uwsgidecorators = %{version}-%{release} %endif %description -n python%{python3_pkgversion}-uwsgidecorators -The uwsgidecorators Python %{python3_version} module provides higher-level access to the uWSGI API. +The uwsgidecorators Python %{python3_version} module provides higher-level +access to the uWSGI API. %endif %if %{with python3_other} @@ -303,7 +298,8 @@ Requires: uwsgi = %{version}-%{release} Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release} %description -n python%{python3_other_pkgversion}-uwsgidecorators -The uwsgidecorators Python %{python3_other_version} module provides higher-level access to the uWSGI API. +The uwsgidecorators Python %{python3_other_version} module provides +higher-level access to the uWSGI API. %endif %package -n uwsgi-docs @@ -364,13 +360,13 @@ This package contains the zabbix plugin for uWSGI %package -n uwsgi-alarm-curl Summary: uWSGI - Curl alarm plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-alarm-curl This package contains the alarm_curl alarm plugin for uWSGI %package -n uwsgi-alarm-xmpp -Summary: uWSGI - XMPP alarm plugin +Summary: uWSGI - Curl alarm plugin Requires: uwsgi-plugin-common = %{version}-%{release}, gloox %description -n uwsgi-alarm-xmpp @@ -447,7 +443,7 @@ This package contains the logfile logger plugin for uWSGI %package -n uwsgi-logger-graylog2 Summary: uWSGI - Graylog2 logger plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, zlib +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-logger-graylog2 This package contains the graylog2 logger plugin for uWSGI @@ -506,14 +502,12 @@ Provides: uwsgi-plugin-syslog = %{version}-%{release} %description -n uwsgi-logger-syslog This package contains the syslog logger plugin for uWSGI -%if %{with systemd} %package -n uwsgi-logger-systemd Summary: uWSGI - systemd journal logger plugin Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-logger-systemd This package contains the systemd journal logger plugin for uWSGI -%endif %if %{with zeromq} %package -n uwsgi-logger-zeromq @@ -528,7 +522,7 @@ This package contains the ZeroMQ logger plugin for uWSGI %package -n uwsgi-plugin-airbrake Summary: uWSGI - Plugin for AirBrake support -Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-airbrake This package contains the airbrake plugin for uWSGI @@ -572,14 +566,14 @@ This package contains the cheaper_busyness plugin for uWSGI %package -n uwsgi-plugin-cplusplus Summary: uWSGI - Plugin for C++ support -Requires: uwsgi-plugin-common = %{version}-%{release}, libstdc++ +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-cplusplus This package contains the cplusplus plugin for uWSGI %package -n uwsgi-plugin-curl-cron Summary: uWSGI - Plugin for CURL Cron support -Requires: uwsgi-plugin-common = %{version}-%{release}, libcurl +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-curl-cron This package contains the curl_cron plugin for uWSGI @@ -624,7 +618,7 @@ This package contains the geoip plugin for uWSGI %if %{with python2} %package -n uwsgi-plugin-python2-gevent Summary: uWSGI - Plugin for Python 2 GEvent support -Requires: uwsgi-plugin-python2 = %{version}-%{release}, libevent +Requires: uwsgi-plugin-python2 = %{version}-%{release} Obsoletes: uwsgi-plugin-gevent < 2.0.16-4 Provides: uwsgi-plugin-gevent = %{version}-%{release} @@ -635,7 +629,7 @@ This package contains the Python 2 gevent plugin for uWSGI %if %{with python3} %package -n uwsgi-plugin-python%{python3_pkgversion}-gevent Summary: uWSGI - Plugin for Python %{python3_version} GEvent support -Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release}, libevent +Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} %description -n uwsgi-plugin-python%{python3_pkgversion}-gevent This package contains the Python %{python3_version} gevent plugin for uWSGI @@ -760,12 +754,14 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, pam %description -n uwsgi-plugin-pam This package contains the PAM plugin for uWSGI +%if %{with php} %package -n uwsgi-plugin-php Summary: uWSGI - Plugin for PHP support Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-php This package contains the PHP plugin for uWSGI +%endif %package -n uwsgi-plugin-pty Summary: uWSGI - Plugin for PTY support @@ -887,10 +883,6 @@ This package contains the tornado (Python 2) plugin for uWSGI %package -n uwsgi-plugin-python%{python3_pkgversion}-tornado Summary: uWSGI - Plugin for Tornado (Python %{python3_version}) support Requires: uwsgi-plugin-common = %{version}-%{release}, python%{python3_pkgversion}-tornado -%if 0%{?fedora} && 0%{?fedora} < 29 -Obsoletes: uwsgi-plugin-tornado3 < 2.0.16-4 -Provides: uwsgi-plugin-tornado3 = %{version}-%{release} -%endif %description -n uwsgi-plugin-python%{python3_pkgversion}-tornado This package contains the tornado (Python %{python3_version}) plugin for uWSGI @@ -914,21 +906,21 @@ This package contains the v8 plugin for uWSGI %package -n uwsgi-plugin-webdav Summary: uWSGI - Plugin for WebDAV support -Requires: uwsgi-plugin-common = %{version}-%{release}, libattr +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-webdav This package contains the webdav plugin for uWSGI %package -n uwsgi-plugin-xattr Summary: uWSGI - Plugin for Extra Attributes support -Requires: uwsgi-plugin-common = %{version}-%{release}, libattr +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-xattr This package contains the xattr plugin for uWSGI %package -n uwsgi-plugin-xslt Summary: uWSGI - Plugin for XSLT transformation support -Requires: uwsgi-plugin-common = %{version}-%{release}, libxslt +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-xslt This package contains the xslt plugin for uWSGI @@ -1134,107 +1126,92 @@ cp -p %{SOURCE5} README.Fedora %patch1 -p1 %patch2 -p1 %patch3 -p1 -%if 0%{?fedora} >= 22 +%if 0%{?fedora} %patch5 -p1 %endif -%if %{with v8} && 0%{?fedora} >= 25 +%if %{with v8} && 0%{?fedora} %patch6 -p1 %endif %if %{with mono} %patch7 -p1 %endif -%patch9 -p1 -%if 0%{?fedora} >= 32 -%patch10 -p1 -%endif -%patch11 -p1 - -#disable plug-ins -%if %{without mongodblibs} -sed -in "s/mongodblog, //" buildconf/fedora.ini -sed -in "s/stats_pusher_mongodb, //" buildconf/fedora.ini -%endif -%if %{without v8} -sed -in "s/v8, //" buildconf/fedora.ini -%endif -%if %{without gridfs} -sed -in "s/gridfs, //" buildconf/fedora.ini -%endif -%if %{without mono} -sed -in "s/mono, //" buildconf/fedora.ini -%endif +%patch12 -p1 +%patch13 -p1 +%patch14 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py %endif - %build -CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --build fedora.ini +CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --build fedora.ini %if %{with python2} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/python fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/gevent fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --plugin plugins/tornado fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --verbose --plugin plugins/python fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --verbose --plugin plugins/gevent fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --verbose --plugin plugins/tornado fedora %endif %if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/python fedora python%{python3_pkgversion} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_pkgversion} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif %if %{with python3_other} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/python fedora python%{python3_other_pkgversion} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_other_pkgversion} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent %endif %if %{with mongodblibs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongodblog fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --plugin plugins/stats_pusher_mongodb fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongodblog fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --verbose --plugin plugins/stats_pusher_mongodb fedora %endif %if %{with mono} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mono fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mono fedora +%endif +%if %{with php} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/php fedora %endif %if %{with v8} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/v8 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/v8 fedora %endif %if %{with go} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gccgo fedora +# In EL* distributions, the gccgo compiler needs to be explicitly used to +# compile Go code, gcc will not work. However, gccgo can compile C code, +# so use that instead +CC="gccgo" CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gccgo fedora %endif %if %{with ruby19} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/fiber fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/rbthreads fedora -%endif -%if %{with systemd} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/systemd_logger fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/fiber fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/rbthreads fedora %endif %if %{with tuntap} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/tuntap fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/tuntap fedora %endif %if %{with perl} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/psgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/coroae fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/psgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/coroae fedora %endif %if %{with zeromq} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/logzmq fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/mongrel2 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/logzmq fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongrel2 fedora %endif %if %{with python2_greenlet} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/greenlet fedora %endif %if %{with python3} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet %endif %if %{with glusterfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/glusterfs fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/glusterfs fedora %endif %if %{with gridfs} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/gridfs fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gridfs fedora %endif %if %{with java} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jvm fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/jwsgi fedora -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/ring fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/jvm fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/jwsgi fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/ring fedora %endif %if %{with tcp_wrappers} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --plugin plugins/router_access fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/router_access fedora %endif %if %{with mod_proxy_uwsgi} %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c @@ -1246,9 +1223,6 @@ install -d %{buildroot}%{_sysconfdir}/uwsgi.d install -d %{buildroot}%{_usrsrc}/uwsgi/%{version} install -d %{buildroot}%{_includedir}/uwsgi install -d %{buildroot}%{_libdir}/uwsgi -%if %{without systemd} -install -d -m 0775 %{buildroot}%{_localstatedir}/run/uwsgi -%endif %if %{with mono} install -d %{buildroot}%{_monogacdir} %endif @@ -1288,12 +1262,8 @@ install -D -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir}/uwsgi.jar gacutil -i plugins/mono/uwsgi.dll -f -package uwsgi -root %{buildroot}/usr/lib %endif install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/uwsgi.ini -%if %{with systemd} install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/uwsgi.service install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf -%else -install -D -p -m 0755 %{SOURCE6} %{buildroot}%{_initddir}/uwsgi -%endif %if %{with mod_proxy_uwsgi} install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so %endif @@ -1302,13 +1272,11 @@ install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_modd %pre getent group uwsgi >/dev/null || groupadd -r uwsgi getent passwd uwsgi >/dev/null || \ - useradd -r -g uwsgi -d %{!?with_systemd:%{_localstatedir}}/run/uwsgi -s /sbin/nologin \ + useradd -r -g uwsgi -d /run/uwsgi -s /sbin/nologin \ -c "uWSGI daemon user" uwsgi exit 0 %post -%if %{with systemd} -echo "Executing systemd post-install tasks" %if 0%{?systemd_post:1} %systemd_post uwsgi.service %else @@ -1317,14 +1285,8 @@ echo "Executing systemd post-install tasks" /bin/systemctl daemon-reload >/dev/null 2>&1 || : fi %endif -%else -echo "Executing System V post-install tasks" -/sbin/chkconfig --add uwsgi -%endif %preun -%if %{with systemd} -echo "Executing systemd pre-uninstall tasks" %if 0%{?systemd_preun:1} %systemd_preun uwsgi.service %else @@ -1334,17 +1296,8 @@ echo "Executing systemd pre-uninstall tasks" /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : fi %endif -%else -echo "Executing System V pre-uninstall tasks" -if [ $1 -eq 0 ] ; then - /sbin/service uwsgi stop >/dev/null 2>&1 - /sbin/chkconfig --del uwsgi -fi -%endif %postun -%if %{with systemd} -echo "Executing systemd post-uninstall tasks" %if 0%{?systemd_postun:1} %systemd_postun uwsgi.service %else @@ -1354,27 +1307,14 @@ echo "Executing systemd post-uninstall tasks" /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : fi %endif -%else -echo "Executing System V post-uninstall tasks" -if [ "$1" -ge "1" ] ; then - /sbin/service uwsgi condrestart >/dev/null 2>&1 || : -fi -%endif %files %{_sbindir}/uwsgi %config(noreplace) %{_sysconfdir}/uwsgi.ini -%if %{with systemd} %{_unitdir}/uwsgi.service %{_tmpfilesdir}/uwsgi.conf -%else -%{_initddir}/uwsgi -%endif %dir %{_sysconfdir}/uwsgi.d -%if %{without systemd} -%attr(0775,uwsgi,uwsgi) %dir %{_localstatedir}/run/uwsgi -%endif %doc README README.Fedora CHANGELOG %license LICENSE @@ -1488,10 +1428,8 @@ fi %files -n uwsgi-logger-syslog %{_libdir}/uwsgi/syslog_plugin.so -%if %{with systemd} %files -n uwsgi-logger-systemd %{_libdir}/uwsgi/systemd_logger_plugin.so -%endif %if %{with zeromq} %files -n uwsgi-logger-zeromq @@ -1616,8 +1554,10 @@ fi %files -n uwsgi-plugin-pam %{_libdir}/uwsgi/pam_plugin.so +%if %{with php} %files -n uwsgi-plugin-php %{_libdir}/uwsgi/php_plugin.so +%endif %files -n uwsgi-plugin-pty %{_libdir}/uwsgi/pty_plugin.so @@ -1776,11 +1716,12 @@ fi %changelog -* Fri Jun 04 2021 Python Maint - 2.0.18-18 -- Rebuilt for Python 3.10 - -* Fri May 21 2021 Jitka Plesnikova - 2.0.18-17 -- Perl 5.34 rebuild +* Sun Jan 23 2022 Ralf Ertzinger - 2.0.20-1 +- Update to 2.0.20 +- Fix build against PHP8 +- Remove support for EL6 +- General logic cleanup and removal of dead code from the spec file +- Add --verbose to build step to show compiler settings * Wed Jan 27 2021 Fedora Release Engineering - 2.0.18-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/uwsgi_fix_chroot_chdir.patch b/uwsgi_fix_chroot_chdir.patch new file mode 100644 index 0000000..5fbbd46 --- /dev/null +++ b/uwsgi_fix_chroot_chdir.patch @@ -0,0 +1,14 @@ +diff -uNr a/core/utils.c b/core/utils.c +--- a/core/utils.c 2021-10-06 07:22:45.000000000 +0200 ++++ b/core/utils.c 2022-01-23 12:19:10.715602147 +0100 +@@ -593,6 +593,10 @@ + uwsgi_error("chroot()"); + exit(1); + } ++ if (chdir("/")) { ++ uwsgi_error("chdir()"); ++ exit(1); ++ } + uwsgi.is_chrooted = 1; + #ifdef __linux__ + if (uwsgi.logging_options.memory_report) { diff --git a/uwsgi_fix_php74_zend.patch b/uwsgi_fix_php74_zend.patch deleted file mode 100644 index a6f47e8..0000000 --- a/uwsgi_fix_php74_zend.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c -index 72c390223..1690fb60c 100644 ---- a/plugins/php/php_plugin.c -+++ b/plugins/php/php_plugin.c -@@ -1115,10 +1115,9 @@ int uwsgi_php_request(struct wsgi_request *wsgi_req) { - - SG(request_info).path_translated = wsgi_req->file; - -+ memset(&file_handle, 0, sizeof(zend_file_handle)); - file_handle.type = ZEND_HANDLE_FILENAME; - file_handle.filename = real_filename; -- file_handle.free_filename = 0; -- file_handle.opened_path = NULL; - - if (php_request_startup(TSRMLS_C) == FAILURE) { - uwsgi_500(wsgi_req); diff --git a/uwsgi_fix_php8.patch b/uwsgi_fix_php8.patch new file mode 100644 index 0000000..c968559 --- /dev/null +++ b/uwsgi_fix_php8.patch @@ -0,0 +1,17 @@ +diff -uNr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +--- a/plugins/php/uwsgiplugin.py 2022-01-22 22:40:33.783038869 +0100 ++++ b/plugins/php/uwsgiplugin.py 2022-01-22 22:41:45.261394898 +0100 +@@ -20,7 +20,12 @@ + if ld_run_path: + LDFLAGS.append('-L%s' % ld_run_path) + +-LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] ++# PHP8 and above does not add the version to the library ++# name ++if int(php_version) < 8: ++ LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] ++else: ++ LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp'] + + phplibdir = os.environ.get('UWSGICONFIG_PHPLIBDIR') + if phplibdir: diff --git a/uwsgi_fix_php_arginfo.patch b/uwsgi_fix_php_arginfo.patch new file mode 100644 index 0000000..5228066 --- /dev/null +++ b/uwsgi_fix_php_arginfo.patch @@ -0,0 +1,43 @@ +diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c +index 717d6317b..d336adddc 100644 +--- a/plugins/php/php_plugin.c ++++ b/plugins/php/php_plugin.c +@@ -497,21 +497,24 @@ PHP_FUNCTION(uwsgi_signal) { + RETURN_NULL(); + } + ++ZEND_BEGIN_ARG_INFO_EX(arginfo_void, 0, 0, 0) ++ZEND_END_ARG_INFO() ++ + zend_function_entry uwsgi_php_functions[] = { +- PHP_FE(uwsgi_version, NULL) +- PHP_FE(uwsgi_setprocname, NULL) +- PHP_FE(uwsgi_worker_id, NULL) +- PHP_FE(uwsgi_masterpid, NULL) +- PHP_FE(uwsgi_signal, NULL) +- +- PHP_FE(uwsgi_rpc, NULL) +- +- PHP_FE(uwsgi_cache_get, NULL) +- PHP_FE(uwsgi_cache_set, NULL) +- PHP_FE(uwsgi_cache_update, NULL) +- PHP_FE(uwsgi_cache_del, NULL) +- PHP_FE(uwsgi_cache_clear, NULL) +- PHP_FE(uwsgi_cache_exists, NULL) ++ PHP_FE(uwsgi_version, arginfo_void) ++ PHP_FE(uwsgi_setprocname, arginfo_void) ++ PHP_FE(uwsgi_worker_id, arginfo_void) ++ PHP_FE(uwsgi_masterpid, arginfo_void) ++ PHP_FE(uwsgi_signal, arginfo_void) ++ ++ PHP_FE(uwsgi_rpc, arginfo_void) ++ ++ PHP_FE(uwsgi_cache_get, arginfo_void) ++ PHP_FE(uwsgi_cache_set, arginfo_void) ++ PHP_FE(uwsgi_cache_update, arginfo_void) ++ PHP_FE(uwsgi_cache_del, arginfo_void) ++ PHP_FE(uwsgi_cache_clear, arginfo_void) ++ PHP_FE(uwsgi_cache_exists, arginfo_void) + { NULL, NULL, NULL}, + }; + diff --git a/uwsgi_fix_psgi.patch b/uwsgi_fix_psgi.patch deleted file mode 100644 index 0c47dba..0000000 --- a/uwsgi_fix_psgi.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff --git a/plugins/psgi/psgi.h b/plugins/psgi/psgi.h -index 92e6b588..064041a2 100644 ---- a/plugins/psgi/psgi.h -+++ b/plugins/psgi/psgi.h -@@ -87,3 +87,5 @@ void uwsgi_perl_exec(char *); - - void uwsgi_perl_check_auto_reload(void); - void uwsgi_psgi_preinit_apps(void); -+ -+extern struct uwsgi_perl uperl; -diff --git a/plugins/psgi/psgi_loader.c b/plugins/psgi/psgi_loader.c -index 1e61f0e9..a9211185 100644 ---- a/plugins/psgi/psgi_loader.c -+++ b/plugins/psgi/psgi_loader.c -@@ -1,7 +1,6 @@ - #include "psgi.h" - - extern struct uwsgi_server uwsgi; --struct uwsgi_perl uperl; - - extern struct uwsgi_plugin psgi_plugin; - -diff --git a/plugins/psgi/psgi_plugin.c b/plugins/psgi/psgi_plugin.c -index e1177be2..8ca0a2ed 100644 ---- a/plugins/psgi/psgi_plugin.c -+++ b/plugins/psgi/psgi_plugin.c -@@ -3,11 +3,7 @@ - extern char **environ; - extern struct uwsgi_server uwsgi; - --#ifdef __APPLE__ --extern struct uwsgi_perl uperl; --#else - struct uwsgi_perl uperl; --#endif - - struct uwsgi_plugin psgi_plugin; - diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index 0333830..4c4178b 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -1,8 +1,7 @@ -diff --git a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py -index f39ad63..d9e95bb 100644 ---- a/plugins/jvm/uwsgiplugin.py -+++ b/plugins/jvm/uwsgiplugin.py -@@ -65,11 +65,6 @@ if "-framework JavaVM" in JVM_LIBPATH: +diff -uNr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +--- a/plugins/jvm/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 ++++ b/plugins/jvm/uwsgiplugin.py 2022-01-23 10:50:20.403612334 +0100 +@@ -65,11 +65,6 @@ GCC_LIST = ['jvm_plugin'] @@ -14,11 +13,10 @@ index f39ad63..d9e95bb 100644 def post_build(config): if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: os._exit(1) -diff --git a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py -index d930c44..273cdde 100644 ---- a/plugins/php/uwsgiplugin.py -+++ b/plugins/php/uwsgiplugin.py -@@ -19,7 +19,6 @@ LDFLAGS = os.popen(PHPPATH + ' --ldflags').read().rstrip().split() +diff -uNr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +--- a/plugins/php/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 ++++ b/plugins/php/uwsgiplugin.py 2022-01-23 10:50:20.404612340 +0100 +@@ -19,7 +19,6 @@ if ld_run_path: LDFLAGS.append('-L%s' % ld_run_path) @@ -26,24 +24,23 @@ index d930c44..273cdde 100644 LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] -diff --git a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py -index 843876f..69ae68f 100644 ---- a/plugins/python/uwsgiplugin.py -+++ b/plugins/python/uwsgiplugin.py -@@ -58,8 +58,6 @@ if not 'UWSGI_PYTHON_NOLIB' in os.environ: - LDFLAGS.append("-L%s" % libdir) - LDFLAGS.append("-Wl,-rpath,%s" % libdir) +diff -uNr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py +--- a/plugins/python/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 ++++ b/plugins/python/uwsgiplugin.py 2022-01-23 10:50:31.286681373 +0100 +@@ -60,9 +60,6 @@ + libdir = "%s/lib" % sysconfig.PREFIX -- os.environ['LD_RUN_PATH'] = "%s" % libdir + LDFLAGS.append("-L%s" % libdir) +- LDFLAGS.append("-Wl,-rpath,%s" % libdir) - +- os.environ['LD_RUN_PATH'] = "%s" % libdir + LIBS.append('-lpython%s' % get_python_version()) else: - LIBS = [] -diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py -index 210b28e..06f5edd 100644 ---- a/plugins/rack/uwsgiplugin.py -+++ b/plugins/rack/uwsgiplugin.py -@@ -46,7 +46,6 @@ LIBS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LIBS']\"" +diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2022-01-23 10:50:20.408612365 +0100 +@@ -46,7 +46,6 @@ if has_shared == 'yes': LDFLAGS.append('-L' + libpath ) @@ -51,11 +48,10 @@ index 210b28e..06f5edd 100644 LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) else: rubylibdir = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['rubylibdir']\"").read().rstrip() -diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py -index ecea48d..4f35984 100644 ---- a/plugins/ruby19/uwsgiplugin.py -+++ b/plugins/ruby19/uwsgiplugin.py -@@ -40,6 +40,5 @@ LDFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['LDFLAG +diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py 2022-01-23 10:50:20.408612365 +0100 +@@ -40,6 +40,5 @@ libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() LDFLAGS.append('-L' + libpath ) From 91de37bf29006eb1eb6463383768fa7d2364e92a Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Mon, 7 Feb 2022 22:31:19 +0100 Subject: [PATCH 350/427] Fix gccgo plugin build for F36 --- uwsgi.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index dd22c36..7fc1caf 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -133,7 +133,7 @@ Name: uwsgi Version: 2.0.20 -Release: 1%{?dist} +Release: 1.1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1176,7 +1176,11 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v # In EL* distributions, the gccgo compiler needs to be explicitly used to # compile Go code, gcc will not work. However, gccgo can compile C code, # so use that instead +%if 0%{?rhel} CC="gccgo" CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gccgo fedora +%else +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/gccgo fedora +%endif %endif %if %{with ruby19} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/fiber fedora @@ -1716,6 +1720,9 @@ exit 0 %changelog +* Mon Feb 07 2022 Ralf Ertzinger - 2.0.20-1.1 +- Fix gccgo plugin build for F36 + * Sun Jan 23 2022 Ralf Ertzinger - 2.0.20-1 - Update to 2.0.20 - Fix build against PHP8 From 27f13253e8162c2385ae3dfbca1f715dab1985c7 Mon Sep 17 00:00:00 2001 From: Troy Dawson Date: Thu, 10 Feb 2022 08:21:55 -0800 Subject: [PATCH 351/427] epel8-playground decommissioned : https://pagure.io/epel/issue/136 --- .gitignore | 0 dead.package | 1 + sources | 0 3 files changed, 1 insertion(+) delete mode 100644 .gitignore create mode 100644 dead.package delete mode 100644 sources diff --git a/.gitignore b/.gitignore deleted file mode 100644 index e69de29..0000000 diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..a72aec0 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +epel8-playground decommissioned : https://pagure.io/epel/issue/136 diff --git a/sources b/sources deleted file mode 100644 index e69de29..0000000 From 07af6e624265d23c84c716498dd3c9d607eb44fd Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 12 Feb 2022 13:45:27 +0100 Subject: [PATCH 352/427] Adding emperor-amqp for all targets Adding emperor-pg for Fedora/EPEL8 Adding emperor-zeromq for Fedora/EPEL8 --- fedora.ini | 1 + uwsgi.spec | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/fedora.ini b/fedora.ini index c0ae6b4..7811aab 100644 --- a/fedora.ini +++ b/fedora.ini @@ -20,6 +20,7 @@ plugins = airbrake, curl_cron, dumbloop, dummy, + emperor_amqp, fastrouter, forkptyrouter, geoip, diff --git a/uwsgi.spec b/uwsgi.spec index 7fc1caf..d65d438 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -16,6 +16,7 @@ %bcond_without perl %bcond_without glusterfs %bcond_without php +%bcond_without pq # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -83,6 +84,7 @@ %bcond_without perl %bcond_without glusterfs %bcond_without php +%bcond_without pq # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -133,7 +135,7 @@ Name: uwsgi Version: 2.0.20 -Release: 1.1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -223,6 +225,9 @@ BuildRequires: mongo-cxx-driver-legacy-devel BuildRequires: mongo-cxx-driver-devel %endif %endif +%if %{with pq} +BuildRequires: libpq-devel +%endif %if 0%{?fedora} BuildRequires: libargon2-devel @@ -1105,6 +1110,33 @@ Provides: uwsgi-routers = %{version}-%{release} %description -n uwsgi-router-xmldir This package contains the xmldir router plugin for uWSGI +# Emperors + +%package -n uwsgi-emperor-amqp +Summary: uWSGI - Plugin for AMQP emperor rupport +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-emperor-amqp +This package contains the AMQP emperor plugin for uWSGI + +%if %{with pq} +%package -n uwsgi-emperor-pg +Summary: uWSGI - Plugin for Postgres emperor rupport +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-emperor-pg +This package contains the Postgres emperor plugin for uWSGI +%endif + +%if %{with zeromq} +%package -n uwsgi-emperor-zeromq +Summary: uWSGI - Plugin for ZeroMQ emperor rupport +Requires: uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-emperor-zeromq +This package contains the ZeroMQ emperor plugin for uWSGI +%endif + # The rest %if %{with mod_proxy_uwsgi} @@ -1196,6 +1228,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v %if %{with zeromq} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/logzmq fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongrel2 fedora +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/emperor_zeromq fedora %endif %if %{with python2_greenlet} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/greenlet fedora @@ -1220,6 +1253,10 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v %if %{with mod_proxy_uwsgi} %{_httpd_apxs} -Wc,-Wall -Wl -c apache2/mod_proxy_uwsgi.c %endif +%if %{with pq} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/emperor_pg fedora +%endif + %install @@ -1711,6 +1748,22 @@ exit 0 %files -n uwsgi-router-xmldir %{_libdir}/uwsgi/router_xmldir_plugin.so +# Emperors + +%files -n uwsgi-emperor-amqp +%{_libdir}/uwsgi/emperor_amqp_plugin.so + +%if %{with pq} +%files -n uwsgi-emperor-pg +%{_libdir}/uwsgi/emperor_pg_plugin.so +%endif + +%if %{with zeromq} +%files -n uwsgi-emperor-zeromq +%{_libdir}/uwsgi/emperor_zeromq_plugin.so +%endif + + # The rest %if %{with mod_proxy_uwsgi} @@ -1720,6 +1773,11 @@ exit 0 %changelog +* Sat Feb 12 2022 Ralf Ertzinger - 2.0.20-2 +- Adding emperor-amqp for all targets +- Adding emperor-pg for Fedora/EPEL8 +- Adding emperor-zeromq for Fedora/EPEL8 + * Mon Feb 07 2022 Ralf Ertzinger - 2.0.20-1.1 - Fix gccgo plugin build for F36 From 6ce71e5bb084fd8404c5d1e5c579f6ae8691ec6e Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 16 Feb 2022 19:40:16 +0100 Subject: [PATCH 353/427] F37 rebuild for new libgo --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index d65d438..015fd25 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -135,7 +135,7 @@ Name: uwsgi Version: 2.0.20 -Release: 2%{?dist} +Release: 2.1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1773,6 +1773,9 @@ exit 0 %changelog +* Wed Feb 16 2022 Ralf Ertzinger - 2.0.20-2.1 +- F37 rebuild for new libgo + * Sat Feb 12 2022 Ralf Ertzinger - 2.0.20-2 - Adding emperor-amqp for all targets - Adding emperor-pg for Fedora/EPEL8 From 9ce919a50a912ba793b5ddfe7d4581ac65ce6806 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 19 Feb 2022 21:28:32 +0100 Subject: [PATCH 354/427] Fix errors in uwsgi python module when building against python3.10 or higher --- uwsgi.spec | 7 ++++++- uwsgi_fix_python_py_ssize_t.patch | 11 +++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_python_py_ssize_t.patch diff --git a/uwsgi.spec b/uwsgi.spec index 015fd25..3db1e53 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -135,7 +135,7 @@ Name: uwsgi Version: 2.0.20 -Release: 2.1%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -163,6 +163,7 @@ Patch12: uwsgi_fix_php8.patch Patch13: uwsgi_fix_chroot_chdir.patch # https://github.com/unbit/uwsgi/issues/2356 Patch14: uwsgi_fix_php_arginfo.patch +Patch15: uwsgi_fix_python_py_ssize_t.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1170,6 +1171,7 @@ cp -p %{SOURCE5} README.Fedora %patch12 -p1 %patch13 -p1 %patch14 -p1 +%patch15 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1773,6 +1775,9 @@ exit 0 %changelog +* Sat Feb 19 2022 Ralf Ertzinger - 2.0.20-3 +- Fix errors in uwsgi python module when building against python3.10 or higher + * Wed Feb 16 2022 Ralf Ertzinger - 2.0.20-2.1 - F37 rebuild for new libgo diff --git a/uwsgi_fix_python_py_ssize_t.patch b/uwsgi_fix_python_py_ssize_t.patch new file mode 100644 index 0000000..ec90175 --- /dev/null +++ b/uwsgi_fix_python_py_ssize_t.patch @@ -0,0 +1,11 @@ +diff -uNr a/plugins/python/uwsgi_python.h b/plugins/python/uwsgi_python.h +--- a/plugins/python/uwsgi_python.h 2021-10-06 07:22:45.000000000 +0200 ++++ b/plugins/python/uwsgi_python.h 2022-02-19 18:39:10.929895062 +0100 +@@ -1,3 +1,7 @@ ++// This needs to be defined before Python.h is included ++// to indicate that the code uses Py_ssize_t properly ++#define PY_SSIZE_T_CLEAN ++ + #include + #include + From 73fd0c25da5b20398b5da6051cdcb3140ae2011c Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 23 Feb 2022 20:13:29 +0100 Subject: [PATCH 355/427] Clean up %post, %preun and %postun scripts --- uwsgi.spec | 29 +++-------------------------- 1 file changed, 3 insertions(+), 26 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 3db1e53..9bf000d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1320,36 +1320,13 @@ getent passwd uwsgi >/dev/null || \ exit 0 %post -%if 0%{?systemd_post:1} - %systemd_post uwsgi.service -%else - if [ $1 -eq 1 ] ; then - # Initial installation - /bin/systemctl daemon-reload >/dev/null 2>&1 || : - fi -%endif +%systemd_post uwsgi.service %preun -%if 0%{?systemd_preun:1} - %systemd_preun uwsgi.service -%else - if [ $1 -eq 0 ] ; then - # Package removal, not upgrade - /bin/systemctl --no-reload disable uwsgi.service > /dev/null 2>&1 || : - /bin/systemctl stop uwsgi.service > /dev/null 2>&1 || : - fi -%endif +%systemd_preun uwsgi.service %postun -%if 0%{?systemd_postun:1} - %systemd_postun uwsgi.service -%else - /bin/systemctl daemon-reload >/dev/null 2>&1 || : - if [ $1 -ge 1 ] ; then - # Package upgrade, not uninstall - /bin/systemctl try-restart uwsgi.service >/dev/null 2>&1 || : - fi -%endif +%systemd_postun uwsgi.service %files From 6d410724c0684c789612d977f96367bfcfa80f6a Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Fri, 4 Mar 2022 20:09:54 +0100 Subject: [PATCH 356/427] Add support for EPEL9 --- fedora.ini | 2 -- uwsgi.spec | 101 +++++++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 94 insertions(+), 9 deletions(-) diff --git a/fedora.ini b/fedora.ini index 7811aab..951846b 100644 --- a/fedora.ini +++ b/fedora.ini @@ -11,7 +11,6 @@ malloc_implementation = libc embedded_plugins = corerouter, echo, ping plugins = airbrake, alarm_curl, - alarm_xmpp, cache, carbon, cgi, @@ -23,7 +22,6 @@ plugins = airbrake, emperor_amqp, fastrouter, forkptyrouter, - geoip, graylog2, http, ldap, diff --git a/uwsgi.spec b/uwsgi.spec index 9bf000d..14dd844 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -14,9 +14,12 @@ %bcond_without tuntap %bcond_without zeromq %bcond_without perl +%bcond_without perlcoro %bcond_without glusterfs %bcond_without php %bcond_without pq +%bcond_without gloox +%bcond_without geoip # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -49,6 +52,8 @@ %bcond_without python2 %bcond_without python3 %bcond_without python3_other +%bcond_without gloox +%bcond_without geoip # This only exists on EL7 %bcond_without tcp_wrappers # el7 doesn't have zeromq @@ -60,6 +65,7 @@ # el7 does have perl-PSGI # el7 does have perl-Coro %bcond_without perl +%bcond_without perlcoro # el7 httpd does not include mod_proxy_uwsgi %bcond_without mod_proxy_uwsgi # el7 can now build glusterfs but only on x86_64 @@ -82,9 +88,12 @@ %bcond_without tuntap %bcond_without zeromq %bcond_without perl +%bcond_without perlcoro %bcond_without glusterfs %bcond_without php %bcond_without pq +%bcond_without gloox +%bcond_without geoip # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -110,6 +119,49 @@ #EL8 endif %endif +%if 0%{?rhel} == 9 +%bcond_without go +%bcond_without python3 +%bcond_without ruby19 +%bcond_without tuntap +# EPEL9 doesn't have zeromq yet +%bcond_with zeromq +%bcond_without perl +# EPEL9 doesn't have perl-Coro yet +%bcond_with perlcoro +# EPEL9 doesn't have glusterfs yet +%bcond_with glusterfs +%bcond_without php +%bcond_without pq +# EPEL9 doesn't have gloox yet +%bcond_with gloox +# EPEL9 doesn't have GeoIP yet +%bcond_with geoip +# javapackages-tools retired (apache-ivy orphanage) +%bcond_with java +# Fedora httpd includes mod_proxy_uwsgi +# https://bugzilla.redhat.com/show_bug.cgi?id=1574335 +%bcond_with mod_proxy_uwsgi +#mono +%ifarch %{mono_arches} +%bcond_without mono +%else +%bcond_with mono +%endif +# mongodblibs +# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 +%bcond_with mongodblibs +# v8-314 retired +%bcond_with v8 +#mongodblibs dependency +%if %{without mongodblibs} +%bcond_with gridfs +%else +%bcond_without gridfs +%endif +#EL9 endif +%endif + %global manual_py_compile 1 # Turn off byte compilation so it doesn't try @@ -135,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -195,12 +247,21 @@ BuildRequires: openssl-devel BuildRequires: bzip2-devel, gmp-devel, pam-devel BuildRequires: sqlite-devel, libcap-devel BuildRequires: httpd-devel, libcurl-devel -BuildRequires: gloox-devel, libstdc++-devel -BuildRequires: GeoIP-devel, libevent-devel, zlib-devel +BuildRequires: libstdc++-devel +%if %{with gloox} +BuildRequires: gloox-devel +%endif +BuildRequires: libevent-devel, zlib-devel +%if %{with geoip} +BuildRequires: GeoIP-devel +%endif BuildRequires: openldap-devel, boost-devel BuildRequires: libattr-devel, libxslt-devel %if %{with perl} -BuildRequires: perl-devel, perl-ExtUtils-Embed, perl-Coro +BuildRequires: perl-devel, perl-ExtUtils-Embed +%if %{with perlcoro} +BuildRequires: perl-Coro +%endif %endif %if %{with zeromq} BuildRequires: zeromq-devel @@ -371,12 +432,14 @@ Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-alarm-curl This package contains the alarm_curl alarm plugin for uWSGI +%if %{with gloox} %package -n uwsgi-alarm-xmpp Summary: uWSGI - Curl alarm plugin -Requires: uwsgi-plugin-common = %{version}-%{release}, gloox +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-alarm-xmpp This package contains the alarm_xmpp alarm plugin for uWSGI +%endif # Transformations @@ -555,6 +618,7 @@ Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-psgi This package contains the PSGI plugin for uWSGI +%if %{with perlcoro} %package -n uwsgi-plugin-coroae Summary: uWSGI - Plugin for PERL Coro support Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{version}-%{release}, perl-Coro @@ -562,6 +626,7 @@ Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-psgi = %{ver %description -n uwsgi-plugin-coroae This package contains the coroae plugin for uWSGI %endif +%endif %package -n uwsgi-plugin-cheaper-busyness Summary: uWSGI - Plugin for Cheaper Busyness algos @@ -614,12 +679,14 @@ Requires: uwsgi-plugin-common = %{version}-%{release} This package contains the gccgo plugin for uWSGI %endif +%if %{with geoip} %package -n uwsgi-plugin-geoip Summary: uWSGI - Plugin for GeoIP support -Requires: uwsgi-plugin-common = %{version}-%{release}, GeoIP +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-geoip This package contains the geoip plugin for uWSGI +%endif %if %{with python2} %package -n uwsgi-plugin-python2-gevent @@ -1173,7 +1240,7 @@ cp -p %{SOURCE5} README.Fedora %patch14 -p1 %patch15 -p1 -%if %{with perl} && (%{with python3} || %{with python3_other}) +%if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py %endif @@ -1225,8 +1292,10 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v %endif %if %{with perl} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/psgi fedora +%if %{with perlcoro} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/coroae fedora %endif +%endif %if %{with zeromq} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/logzmq fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongrel2 fedora @@ -1249,6 +1318,12 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/jwsgi fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/ring fedora %endif +%if %{with gloox} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/alarm_xmpp fedora +%endif +%if %{with geoip} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/geoip fedora +%endif %if %{with tcp_wrappers} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/router_access fedora %endif @@ -1391,8 +1466,10 @@ exit 0 %files -n uwsgi-alarm-curl %{_libdir}/uwsgi/alarm_curl_plugin.so +%if %{with gloox} %files -n uwsgi-alarm-xmpp %{_libdir}/uwsgi/alarm_xmpp_plugin.so +%endif # Transformations @@ -1471,9 +1548,11 @@ exit 0 %files -n uwsgi-plugin-psgi %{_libdir}/uwsgi/psgi_plugin.so +%if %{with perlcoro} %files -n uwsgi-plugin-coroae %{_libdir}/uwsgi/coroae_plugin.so %endif +%endif %files -n uwsgi-plugin-cheaper-busyness %{_libdir}/uwsgi/cheaper_busyness_plugin.so @@ -1500,8 +1579,10 @@ exit 0 %{_libdir}/uwsgi/gccgo_plugin.so %endif +%if %{with geoip} %files -n uwsgi-plugin-geoip %{_libdir}/uwsgi/geoip_plugin.so +%endif %if %{with python2} %files -n uwsgi-plugin-python2-gevent @@ -1752,6 +1833,12 @@ exit 0 %changelog +* Fri Mar 04 2022 Ralf Ertzinger - 2.0.20-4 +- Add support for EPEL9 + +* Wed Mar 02 2022 Ralf Ertzinger - 2.0.20-3 +- Add build support for EPEL9 + * Sat Feb 19 2022 Ralf Ertzinger - 2.0.20-3 - Fix errors in uwsgi python module when building against python3.10 or higher From 927b0ea2f07930b9da36aa32a658049fd3e6d442 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 1 Jun 2022 08:39:30 +0200 Subject: [PATCH 357/427] Perl 5.36 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 14dd844..e590ac8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -187,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1833,6 +1833,9 @@ exit 0 %changelog +* Wed Jun 01 2022 Jitka Plesnikova - 2.0.20-5 +- Perl 5.36 rebuild + * Fri Mar 04 2022 Ralf Ertzinger - 2.0.20-4 - Add support for EPEL9 From 35a88dd5f8f1f586c587f789bade370743af4847 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 13 Jun 2022 19:54:20 +0200 Subject: [PATCH 358/427] Rebuilt for Python 3.11 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e590ac8..e4063f8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -187,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1833,6 +1833,9 @@ exit 0 %changelog +* Mon Jun 13 2022 Python Maint - 2.0.20-6 +- Rebuilt for Python 3.11 + * Wed Jun 01 2022 Jitka Plesnikova - 2.0.20-5 - Perl 5.36 rebuild From 703b4ef92df1f0058bc07543fde9754de2fecc95 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Thu, 30 Jun 2022 10:31:35 +0000 Subject: [PATCH 359/427] Add Python 3.11 support Resolves: rhbz#2099185 --- uwsgi.spec | 7 +- uwsgi_python311.patch | 174 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 180 insertions(+), 1 deletion(-) create mode 100644 uwsgi_python311.patch diff --git a/uwsgi.spec b/uwsgi.spec index e4063f8..016d6a8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -187,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -216,6 +216,7 @@ Patch13: uwsgi_fix_chroot_chdir.patch # https://github.com/unbit/uwsgi/issues/2356 Patch14: uwsgi_fix_php_arginfo.patch Patch15: uwsgi_fix_python_py_ssize_t.patch +Patch16: uwsgi_python311.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1239,6 +1240,7 @@ cp -p %{SOURCE5} README.Fedora %patch13 -p1 %patch14 -p1 %patch15 -p1 +%patch16 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1833,6 +1835,9 @@ exit 0 %changelog +* Thu Jun 30 2022 Victor Stinner - 2.0.20-7 +- Add Python 3.11 support (rhbz#2099185) + * Mon Jun 13 2022 Python Maint - 2.0.20-6 - Rebuilt for Python 3.11 diff --git a/uwsgi_python311.patch b/uwsgi_python311.patch new file mode 100644 index 0000000..ddf0a3d --- /dev/null +++ b/uwsgi_python311.patch @@ -0,0 +1,174 @@ +Add Python 3.11 support + +Backport of https://github.com/unbit/uwsgi/pull/2453 + +Resolves: rhbz#2099185 + +diff --git a/plugins/python/profiler.c b/plugins/python/profiler.c +index 92bc3da..2a7e1cc 100644 +--- a/plugins/python/profiler.c ++++ b/plugins/python/profiler.c +@@ -13,6 +13,14 @@ int PyFrame_GetLineNumber(PyFrameObject *frame) { + } + #endif + ++#if PY_VERSION_HEX < 0x030900B1 ++PyCodeObject* PyFrame_GetCode(PyFrameObject *frame) ++{ ++ Py_INCREF(frame->f_code); ++ return frame->f_code; ++} ++#endif ++ + #ifdef PYTHREE + #undef PyString_AsString + static char *PyString_AsString(PyObject *o) { +@@ -27,27 +35,32 @@ int uwsgi_python_profiler_call(PyObject *obj, PyFrameObject *frame, int what, Py + static uint64_t last_ts = 0; + uint64_t now = uwsgi_micros(); + uint64_t delta = 0; ++ PyCodeObject *code; + + switch(what) { + case PyTrace_CALL: + if (last_ts == 0) delta = 0; + else delta = now - last_ts; + last_ts = now; ++ code = PyFrame_GetCode(frame); + uwsgi_log("[uWSGI Python profiler %llu] CALL: %s (line %d) -> %s %d args, stacksize %d\n", + (unsigned long long) delta, +- PyString_AsString(frame->f_code->co_filename), ++ PyString_AsString(code->co_filename), + PyFrame_GetLineNumber(frame), +- PyString_AsString(frame->f_code->co_name), frame->f_code->co_argcount, frame->f_code->co_stacksize); ++ PyString_AsString(code->co_name), code->co_argcount, code->co_stacksize); ++ Py_DECREF(code); + break; + case PyTrace_C_CALL: + if (last_ts == 0) delta = 0; + else delta = now - last_ts; + last_ts = now; ++ code = PyFrame_GetCode(frame); + uwsgi_log("[uWSGI Python profiler %llu] C CALL: %s (line %d) -> %s %d args, stacksize %d\n", + (unsigned long long) delta, +- PyString_AsString(frame->f_code->co_filename), ++ PyString_AsString(code->co_filename), + PyFrame_GetLineNumber(frame), +- PyEval_GetFuncName(arg), frame->f_code->co_argcount, frame->f_code->co_stacksize); ++ PyEval_GetFuncName(arg), code->co_argcount, code->co_stacksize); ++ Py_DECREF(code); + break; + } + +@@ -68,7 +81,9 @@ int uwsgi_python_tracer(PyObject *obj, PyFrameObject *frame, int what, PyObject + delta = now - last_ts; + } + last_ts = now; +- uwsgi_log("[uWSGI Python profiler %llu] file %s line %d: %s argc:%d\n", (unsigned long long)delta, PyString_AsString(frame->f_code->co_filename), PyFrame_GetLineNumber(frame), PyString_AsString(frame->f_code->co_name), frame->f_code->co_argcount); ++ PyCodeObject *code = PyFrame_GetCode(frame); ++ uwsgi_log("[uWSGI Python profiler %llu] file %s line %d: %s argc:%d\n", (unsigned long long)delta, PyString_AsString(code->co_filename), PyFrame_GetLineNumber(frame), PyString_AsString(code->co_name), code->co_argcount); ++ Py_DECREF(code); + } + + return 0; +diff --git a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c +index 6834f84..1d21c0d 100644 +--- a/plugins/python/python_plugin.c ++++ b/plugins/python/python_plugin.c +@@ -1137,9 +1137,13 @@ void uwsgi_python_init_apps() { + } + + // prepare for stack suspend/resume +- if (uwsgi.async > 1) { ++ if (uwsgi.async > 0) { ++#ifdef UWSGI_PY311 ++ up.current_recursion_remaining = uwsgi_malloc(sizeof(int)*uwsgi.async); ++#else + up.current_recursion_depth = uwsgi_malloc(sizeof(int)*uwsgi.async); +- up.current_frame = uwsgi_malloc(sizeof(struct _frame)*uwsgi.async); ++#endif ++ up.current_frame = uwsgi_malloc(sizeof(up.current_frame[0])*uwsgi.async); + } + + // setup app loaders +@@ -1530,12 +1534,22 @@ void uwsgi_python_suspend(struct wsgi_request *wsgi_req) { + PyGILState_Release(pgst); + + if (wsgi_req) { ++#ifdef UWSGI_PY311 ++ up.current_recursion_remaining[wsgi_req->async_id] = tstate->recursion_remaining; ++ up.current_frame[wsgi_req->async_id] = tstate->cframe; ++#else + up.current_recursion_depth[wsgi_req->async_id] = tstate->recursion_depth; + up.current_frame[wsgi_req->async_id] = tstate->frame; ++#endif + } + else { ++#ifdef UWSGI_PY311 ++ up.current_main_recursion_remaining = tstate->recursion_remaining; ++ up.current_main_frame = tstate->cframe; ++#else + up.current_main_recursion_depth = tstate->recursion_depth; + up.current_main_frame = tstate->frame; ++#endif + } + + } +@@ -1763,12 +1777,22 @@ void uwsgi_python_resume(struct wsgi_request *wsgi_req) { + PyGILState_Release(pgst); + + if (wsgi_req) { ++#ifdef UWSGI_PY311 ++ tstate->recursion_remaining = up.current_recursion_remaining[wsgi_req->async_id]; ++ tstate->cframe = up.current_frame[wsgi_req->async_id]; ++#else + tstate->recursion_depth = up.current_recursion_depth[wsgi_req->async_id]; + tstate->frame = up.current_frame[wsgi_req->async_id]; ++#endif + } + else { ++#ifdef UWSGI_PY311 ++ tstate->recursion_remaining = up.current_main_recursion_remaining; ++ tstate->cframe = up.current_main_frame; ++#else + tstate->recursion_depth = up.current_main_recursion_depth; + tstate->frame = up.current_main_frame; ++#endif + } + + } +diff --git a/plugins/python/uwsgi_python.h b/plugins/python/uwsgi_python.h +index 357d731..6c6f7a4 100644 +--- a/plugins/python/uwsgi_python.h ++++ b/plugins/python/uwsgi_python.h +@@ -18,6 +18,10 @@ + #define UWSGI_PYTHON_OLD + #endif + ++#if (PY_VERSION_HEX >= 0x030b0000) ++# define UWSGI_PY311 ++#endif ++ + #if PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7 + #define HAS_NOT_PyMemoryView_FromBuffer + #endif +@@ -165,11 +169,19 @@ struct uwsgi_python { + + char *callable; + ++#ifdef UWSGI_PY311 ++ int *current_recursion_remaining; ++ _PyCFrame **current_frame; ++ ++ int current_main_recursion_remaining; ++ _PyCFrame *current_main_frame; ++#else + int *current_recursion_depth; + struct _frame **current_frame; + + int current_main_recursion_depth; + struct _frame *current_main_frame; ++#endif + + void (*swap_ts)(struct wsgi_request *, struct uwsgi_app *); + void (*reset_ts)(struct wsgi_request *, struct uwsgi_app *); From 061e65645fbde5372b1a64e5becd0eef077aa5ea Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 11:37:12 +0000 Subject: [PATCH 360/427] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 016d6a8..150b288 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -187,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1835,6 +1835,9 @@ exit 0 %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 2.0.20-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jun 30 2022 Victor Stinner - 2.0.20-7 - Add Python 3.11 support (rhbz#2099185) From a3b3307d31f54e455d5732477802af503349a759 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 9 Aug 2022 22:05:51 +0200 Subject: [PATCH 361/427] Fix PHP 8.1 support --- uwsgi.spec | 8 ++++- uwsgi_fix_php81_filename_zend_string.patch | 42 ++++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_php81_filename_zend_string.patch diff --git a/uwsgi.spec b/uwsgi.spec index 150b288..0cc77f1 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -187,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -217,6 +217,8 @@ Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_fix_php_arginfo.patch Patch15: uwsgi_fix_python_py_ssize_t.patch Patch16: uwsgi_python311.patch +# https://github.com/unbit/uwsgi/pull/2400 +Patch17: uwsgi_fix_php81_filename_zend_string.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1241,6 +1243,7 @@ cp -p %{SOURCE5} README.Fedora %patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1835,6 +1838,9 @@ exit 0 %changelog +* Tue Aug 09 2022 Ralf Ertzinger - 2.0.20-9 +- Fix PHP 8.1 support + * Sat Jul 23 2022 Fedora Release Engineering - 2.0.20-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/uwsgi_fix_php81_filename_zend_string.patch b/uwsgi_fix_php81_filename_zend_string.patch new file mode 100644 index 0000000..81d9025 --- /dev/null +++ b/uwsgi_fix_php81_filename_zend_string.patch @@ -0,0 +1,42 @@ +From 8ca18da9a01eee19156243c5c0d28d2572698e4a Mon Sep 17 00:00:00 2001 +From: Riccardo Magliocchetti +Date: Sun, 30 Jan 2022 14:31:50 +0100 +Subject: [PATCH] plugins/php: handle php8.1 zend_file_handle signature change + +filename is now a zend_string. + +Refs #2394 +--- + plugins/php/php_plugin.c | 17 +++++++++++------ + 1 file changed, 11 insertions(+), 6 deletions(-) + +diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c +index d336adddc..8b5a24156 100644 +--- a/plugins/php/php_plugin.c ++++ b/plugins/php/php_plugin.c +@@ -1096,14 +1096,19 @@ int uwsgi_php_request(struct wsgi_request *wsgi_req) { + + SG(request_info).path_translated = wsgi_req->file; + +- memset(&file_handle, 0, sizeof(zend_file_handle)); +- file_handle.type = ZEND_HANDLE_FILENAME; +- file_handle.filename = real_filename; ++#if PHP_VERSION_ID >= 80100 ++ zend_string *handle_filename = zend_string_init(real_filename, real_filename_len, 0); ++#else ++ const char *handle_filename = real_filename; ++#endif ++ memset(&file_handle, 0, sizeof(zend_file_handle)); ++ file_handle.type = ZEND_HANDLE_FILENAME; ++ file_handle.filename = handle_filename; + +- if (php_request_startup() == FAILURE) { ++ if (php_request_startup() == FAILURE) { + uwsgi_500(wsgi_req); +- return -1; +- } ++ return -1; ++ } + + struct uwsgi_string_list *usl=NULL; + From 4cfce955e51396c4d68be16fe7d90d98baf373f6 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Fri, 16 Sep 2022 20:22:45 +0200 Subject: [PATCH 362/427] Remove deprecated StandardError setting from .service file --- uwsgi.service | 1 - 1 file changed, 1 deletion(-) diff --git a/uwsgi.service b/uwsgi.service index 73db94c..dec058d 100644 --- a/uwsgi.service +++ b/uwsgi.service @@ -9,7 +9,6 @@ ExecReload=/bin/kill -HUP $MAINPID KillSignal=SIGINT Restart=always Type=notify -StandardError=syslog NotifyAccess=all [Install] From 361f4afe4bc0e34f3e28fdbd9324a278a54c7cdc Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 6 Oct 2022 20:23:45 +0200 Subject: [PATCH 363/427] Fix PHP 8.2 support --- uwsgi.spec | 7 ++++++- uwsgi_fix_php82.patch | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_php82.patch diff --git a/uwsgi.spec b/uwsgi.spec index 0cc77f1..336ec39 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -187,7 +187,7 @@ Name: uwsgi Version: 2.0.20 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -219,6 +219,7 @@ Patch15: uwsgi_fix_python_py_ssize_t.patch Patch16: uwsgi_python311.patch # https://github.com/unbit/uwsgi/pull/2400 Patch17: uwsgi_fix_php81_filename_zend_string.patch +Patch18: uwsgi_fix_php82.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1244,6 +1245,7 @@ cp -p %{SOURCE5} README.Fedora %patch15 -p1 %patch16 -p1 %patch17 -p1 +%patch18 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1838,6 +1840,9 @@ exit 0 %changelog +* Thu Oct 06 2022 Ralf Ertzinger - 2.0.20-10 +- Fix PHP 8.2 support + * Tue Aug 09 2022 Ralf Ertzinger - 2.0.20-9 - Fix PHP 8.1 support diff --git a/uwsgi_fix_php82.patch b/uwsgi_fix_php82.patch new file mode 100644 index 0000000..66a8e49 --- /dev/null +++ b/uwsgi_fix_php82.patch @@ -0,0 +1,15 @@ +diff -uNr a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c +--- a/plugins/php/php_plugin.c 2022-10-06 19:52:07.237882916 +0200 ++++ b/plugins/php/php_plugin.c 2022-10-06 19:56:29.232418542 +0200 +@@ -607,7 +607,11 @@ + static int php_uwsgi_startup(sapi_module_struct *sapi_module) + { + ++#if PHP_VERSION_ID >= 80200 ++ if (php_module_startup(&uwsgi_sapi_module, &uwsgi_module_entry)==FAILURE) { ++#else + if (php_module_startup(&uwsgi_sapi_module, &uwsgi_module_entry, 1)==FAILURE) { ++#endif + return FAILURE; + } else { + return SUCCESS; From 9a8c2b97e26552cce11fdf52001d0346a32f91d2 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Fri, 28 Oct 2022 19:25:26 +0200 Subject: [PATCH 364/427] Update to 2.0.21 --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 13 ++++++------- uwsgi_fix_mono.patch | 14 +++++++------- uwsgi_fix_rpath.patch | 36 ++++++++++++++++++------------------ 5 files changed, 35 insertions(+), 34 deletions(-) diff --git a/.gitignore b/.gitignore index fb9d183..a8a8f9c 100644 --- a/.gitignore +++ b/.gitignore @@ -48,3 +48,5 @@ /uwsgi-docs-8d868ea.tar.gz /uwsgi-2.0.20.tar.gz /uwsgi-docs-9b4ef5f.tar.gz +/uwsgi-2.0.21.tar.gz +/uwsgi-docs-47e1794.tar.gz diff --git a/sources b/sources index 3e2395c..d55d324 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.20.tar.gz) = 22677a8ad1ea886e1a3a153f486474ce064a55e5b12515322345116980f699f4e2e73267f991c300d904284e06f265ea821e71ba3c97832b6f25705475b498ff -SHA512 (uwsgi-docs-9b4ef5f.tar.gz) = faacb571533c5e770cf5701e979efec44b042d8eda6051d79a65216067715d113168663e8fc0f84133fecaeecee3053b60a5f9ac7938558f40a6cae90cd79b52 +SHA512 (uwsgi-2.0.21.tar.gz) = 36a9c1b87a4c3d08482b9045d2227f56b006acb53f38ddf1b510880ae5fc24c0177a077338ec8af3ef0b8f8e220bc4fc7f8311dab8066e13cbcbb616f736c795 +SHA512 (uwsgi-docs-47e1794.tar.gz) = 8fa66303b405da519f986e8a848439bb76d8043a860bb468e43fb451b672a5234ec1a06835b47f0e9bb467bab1bc0daf7fae387dfa1ef0ed3a3a501234fc5950 diff --git a/uwsgi.spec b/uwsgi.spec index 336ec39..f0648cc 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 9b4ef5fa68fe42929a5e5410165d36fcc7b2d2c7 +%global commit 47e17949d0fd95e524d4f90cc58a3fcb11bc0bae %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -186,8 +186,8 @@ %endif Name: uwsgi -Version: 2.0.20 -Release: 10%{?dist} +Version: 2.0.21 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1241,10 +1241,6 @@ cp -p %{SOURCE5} README.Fedora %endif %patch12 -p1 %patch13 -p1 -%patch14 -p1 -%patch15 -p1 -%patch16 -p1 -%patch17 -p1 %patch18 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} @@ -1840,6 +1836,9 @@ exit 0 %changelog +* Thu Oct 27 2022 Ralf Ertzinger - 2.0.21-1 +- Update to 2.0.21 + * Thu Oct 06 2022 Ralf Ertzinger - 2.0.20-10 - Fix PHP 8.2 support diff --git a/uwsgi_fix_mono.patch b/uwsgi_fix_mono.patch index 217eb68..bce3b1a 100644 --- a/uwsgi_fix_mono.patch +++ b/uwsgi_fix_mono.patch @@ -1,15 +1,15 @@ -diff -Naurp a/plugins/mono/uwsgiplugin.py b/plugins/mono/uwsgiplugin.py ---- a/plugins/mono/uwsgiplugin.py 2016-10-03 03:16:59.000000000 -0500 -+++ b/plugins/mono/uwsgiplugin.py 2017-03-20 16:18:54.917935286 -0500 -@@ -1,9 +1,9 @@ - import os - NAME='mono' +diff -uNwr a/plugins/mono/uwsgiplugin.py b/plugins/mono/uwsgiplugin.py +--- a/plugins/mono/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/mono/uwsgiplugin.py 2022-10-27 20:47:38.791413699 +0200 +@@ -3,9 +3,9 @@ + + NAME = 'mono' -CFLAGS = os.popen('pkg-config --cflags mono-2').read().rstrip().split() +CFLAGS = os.popen('pkg-config --cflags mono-2 glib-2.0').read().rstrip().split() LDFLAGS = [] -LIBS = os.popen('pkg-config --libs mono-2').read().rstrip().split() -+LIBS = os.popen('pkg-config --libs mono-2 glib-2.0').read().rstrip().split() ++LIBS = os.popen('pkg-config --libs mono-2 glib-2.0').read().rstrip().split() GCC_LIST = ['mono_plugin'] if os.uname()[0] == 'Darwin': diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index 4c4178b..cb9295b 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -1,7 +1,7 @@ -diff -uNr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py ---- a/plugins/jvm/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 -+++ b/plugins/jvm/uwsgiplugin.py 2022-01-23 10:50:20.403612334 +0100 -@@ -65,11 +65,6 @@ +diff -uNwr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +--- a/plugins/jvm/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/jvm/uwsgiplugin.py 2022-10-27 20:37:16.544261133 +0200 +@@ -66,11 +66,6 @@ GCC_LIST = ['jvm_plugin'] @@ -11,11 +11,11 @@ diff -uNr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py - os.environ['LD_RUN_PATH'] = JVM_LIBPATH[0][2:] - def post_build(config): - if os.system("javac %s/plugins/jvm/uwsgi.java" % os.getcwd()) != 0: + if subprocess.call("javac %s/plugins/jvm/uwsgi.java" % os.getcwd(), shell=True) != 0: os._exit(1) -diff -uNr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py ---- a/plugins/php/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 -+++ b/plugins/php/uwsgiplugin.py 2022-01-23 10:50:20.404612340 +0100 +diff -uNwr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +--- a/plugins/php/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/php/uwsgiplugin.py 2022-10-27 20:37:39.006374938 +0200 @@ -19,7 +19,6 @@ if ld_run_path: @@ -24,10 +24,10 @@ diff -uNr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] -diff -uNr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py ---- a/plugins/python/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 -+++ b/plugins/python/uwsgiplugin.py 2022-01-23 10:50:31.286681373 +0100 -@@ -60,9 +60,6 @@ +diff -uNwr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py +--- a/plugins/python/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/python/uwsgiplugin.py 2022-10-27 20:38:16.898566910 +0200 +@@ -62,9 +62,6 @@ libdir = "%s/lib" % sysconfig.PREFIX LDFLAGS.append("-L%s" % libdir) @@ -37,9 +37,9 @@ diff -uNr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py LIBS.append('-lpython%s' % get_python_version()) else: -diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 -+++ b/plugins/rack/uwsgiplugin.py 2022-01-23 10:50:20.408612365 +0100 +diff -uNwr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2022-10-27 20:38:50.787738600 +0200 @@ -46,7 +46,6 @@ if has_shared == 'yes': @@ -48,9 +48,9 @@ diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) else: rubylibdir = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['rubylibdir']\"").read().rstrip() -diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py 2021-10-06 07:22:45.000000000 +0200 -+++ b/plugins/ruby19/uwsgiplugin.py 2022-01-23 10:50:20.408612365 +0100 +diff -uNwr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py 2022-10-27 20:39:48.879032934 +0200 @@ -40,6 +40,5 @@ libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() From b41d6035d61b2ed897c4f08723daee07a4fcbf2d Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Fri, 28 Oct 2022 21:39:35 +0200 Subject: [PATCH 365/427] Drop the perl-PSGI Requirement from the Perl plugin, it's not trictly needed --- uwsgi.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index f0648cc..200d947 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -62,9 +62,8 @@ %ifarch x86_64 %bcond_without python2_greenlet %endif -# el7 does have perl-PSGI -# el7 does have perl-Coro %bcond_without perl +# el7 does have perl-Coro %bcond_without perlcoro # el7 httpd does not include mod_proxy_uwsgi %bcond_without mod_proxy_uwsgi @@ -187,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -617,7 +616,7 @@ This package contains the Carbon plugin for uWSGI (to use in graphite) %if %{with perl} %package -n uwsgi-plugin-psgi Summary: uWSGI - Plugin for PSGI support -Requires: perl-PSGI, uwsgi-plugin-common = %{version}-%{release} +Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-psgi This package contains the PSGI plugin for uWSGI @@ -1836,6 +1835,10 @@ exit 0 %changelog +* Fri Oct 28 2022 Ralf Ertzinger - 2.0.21-2 +- Drop the perl-PSGI Requirement from the Perl plugin, it's not + strictly needed + * Thu Oct 27 2022 Ralf Ertzinger - 2.0.21-1 - Update to 2.0.21 From eee272fdb86d37c8c44f41eb8a57b83f7e6fc92c Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 4 Jan 2023 15:21:46 +0900 Subject: [PATCH 366/427] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 200d947..ad692cb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -186,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1835,6 +1835,9 @@ exit 0 %changelog +* Wed Jan 04 2023 Mamoru TASAKA - 2.0.21-3 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 + * Fri Oct 28 2022 Ralf Ertzinger - 2.0.21-2 - Drop the perl-PSGI Requirement from the Perl plugin, it's not strictly needed From 4cca0607cdb338dc3eadc72495ea342e360b2150 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 21 Jan 2023 06:02:54 +0000 Subject: [PATCH 367/427] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ad692cb..655fa83 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -186,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1835,6 +1835,9 @@ exit 0 %changelog +* Sat Jan 21 2023 Fedora Release Engineering - 2.0.21-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Wed Jan 04 2023 Mamoru TASAKA - 2.0.21-3 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 From e5468e855f6424756080c6e005882e2c2fd06c1c Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 24 Jan 2023 21:10:19 +0100 Subject: [PATCH 368/427] Rebuilt for new libgo.so --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 655fa83..e2890be 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -186,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1835,6 +1835,9 @@ exit 0 %changelog +* Tue Jan 24 2023 Ralf Ertzinger - 2.0.21-5 +- Rebuilt for new libgo.so + * Sat Jan 21 2023 Fedora Release Engineering - 2.0.21-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 8e28bafc5ef348fa589b3560d75bac22e6141aa6 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 22 Apr 2023 15:28:53 +0200 Subject: [PATCH 369/427] Fix Ruby/Rack plugin for Ruby >= 3.2 --- uwsgi.spec | 7 ++++++- uwsgi_fix_ruby_taint.patch | 27 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 uwsgi_fix_ruby_taint.patch diff --git a/uwsgi.spec b/uwsgi.spec index e2890be..6b51a54 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -186,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -219,6 +219,7 @@ Patch16: uwsgi_python311.patch # https://github.com/unbit/uwsgi/pull/2400 Patch17: uwsgi_fix_php81_filename_zend_string.patch Patch18: uwsgi_fix_php82.patch +Patch19: uwsgi_fix_ruby_taint.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1241,6 +1242,7 @@ cp -p %{SOURCE5} README.Fedora %patch12 -p1 %patch13 -p1 %patch18 -p1 +%patch19 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1835,6 +1837,9 @@ exit 0 %changelog +* Fri Apr 21 2023 Ralf Ertzinger - 2.0.21-6 +- Fix Ruby/Rack plugin for Ruby >= 3.2 + * Tue Jan 24 2023 Ralf Ertzinger - 2.0.21-5 - Rebuilt for new libgo.so diff --git a/uwsgi_fix_ruby_taint.patch b/uwsgi_fix_ruby_taint.patch new file mode 100644 index 0000000..b23b671 --- /dev/null +++ b/uwsgi_fix_ruby_taint.patch @@ -0,0 +1,27 @@ +diff -uNr a/plugins/rack/rack_plugin.c b/plugins/rack/rack_plugin.c +--- a/plugins/rack/rack_plugin.c 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/rack/rack_plugin.c 2023-04-21 21:51:06.675598538 +0200 +@@ -456,7 +456,11 @@ + + static void rack_hack_dollar_zero(VALUE name, ID id) { + ur.dollar_zero = rb_obj_as_string(name); ++ // From ruby 2.7 onwards this is a noop, from ruby 3.2 onwards ++ // this function no longer exists ++#if !defined(RUBY27) + rb_obj_taint(ur.dollar_zero); ++#endif + } + + #ifndef RUBY19 +diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py 2023-04-21 21:47:16.170430600 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2023-04-21 21:49:33.070124247 +0200 +@@ -18,6 +18,8 @@ + CFLAGS.append('-DRUBY19') + if version >= '2.0': + CFLAGS.append('-DRUBY20') ++ if version >= '2.7': ++ CFLAGS.append('-DRUBY27') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: From 9a0d37a514eda1faae6ee76c6c4eb246c77b0871 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 22 Apr 2023 21:20:36 +0200 Subject: [PATCH 370/427] Fix incomplete patch for Ruby taint issue --- uwsgi.spec | 4 ++-- uwsgi_fix_ruby_taint.patch | 18 +++++++++++++++--- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6b51a54..64cd91d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -186,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1837,7 +1837,7 @@ exit 0 %changelog -* Fri Apr 21 2023 Ralf Ertzinger - 2.0.21-6 +* Fri Apr 21 2023 Ralf Ertzinger - 2.0.21-7 - Fix Ruby/Rack plugin for Ruby >= 3.2 * Tue Jan 24 2023 Ralf Ertzinger - 2.0.21-5 diff --git a/uwsgi_fix_ruby_taint.patch b/uwsgi_fix_ruby_taint.patch index b23b671..720fb81 100644 --- a/uwsgi_fix_ruby_taint.patch +++ b/uwsgi_fix_ruby_taint.patch @@ -1,6 +1,6 @@ diff -uNr a/plugins/rack/rack_plugin.c b/plugins/rack/rack_plugin.c --- a/plugins/rack/rack_plugin.c 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/rack/rack_plugin.c 2023-04-21 21:51:06.675598538 +0200 ++++ b/plugins/rack/rack_plugin.c 2023-04-22 21:18:03.451028685 +0200 @@ -456,7 +456,11 @@ static void rack_hack_dollar_zero(VALUE name, ID id) { @@ -14,8 +14,20 @@ diff -uNr a/plugins/rack/rack_plugin.c b/plugins/rack/rack_plugin.c #ifndef RUBY19 diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py 2023-04-21 21:47:16.170430600 +0200 -+++ b/plugins/rack/uwsgiplugin.py 2023-04-21 21:49:33.070124247 +0200 +--- a/plugins/rack/uwsgiplugin.py 2023-04-22 21:17:26.854810444 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2023-04-22 21:18:03.454028704 +0200 +@@ -18,6 +18,8 @@ + CFLAGS.append('-DRUBY19') + if version >= '2.0': + CFLAGS.append('-DRUBY20') ++ if version >= '2.7': ++ CFLAGS.append('-DRUBY27') + CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' + else: +diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py 2023-04-22 21:17:26.854810444 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py 2023-04-22 21:18:36.479225658 +0200 @@ -18,6 +18,8 @@ CFLAGS.append('-DRUBY19') if version >= '2.0': From 613d1530bdc2f7ffadada60b5ef373279ec86b91 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Thu, 15 Jun 2023 18:55:12 +0200 Subject: [PATCH 371/427] Rebuilt for Python 3.12 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 64cd91d..6aac1e8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -186,7 +186,7 @@ Name: uwsgi Version: 2.0.21 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1837,6 +1837,9 @@ exit 0 %changelog +* Thu Jun 15 2023 Python Maint - 2.0.21-8 +- Rebuilt for Python 3.12 + * Fri Apr 21 2023 Ralf Ertzinger - 2.0.21-7 - Fix Ruby/Rack plugin for Ruby >= 3.2 From 046b3f783efbeaa456e9ead7d8fc41249268ff5a Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 15 Jun 2023 19:50:29 +0200 Subject: [PATCH 372/427] Rework Ruby patches Disable python3-greenlet plugin for EPEL9 --- uwsgi.spec | 19 +++++++++++++++---- uwsgi_fix_ruby_taint.patch | 30 +++++++++++++++--------------- uwsgi_ruby20_compatibility.patch | 32 ++++++++++++-------------------- 3 files changed, 42 insertions(+), 39 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6aac1e8..0e7782a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -10,6 +10,7 @@ %if 0%{?fedora} %bcond_without go %bcond_without python3 +%bcond_without python3_greenlet %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq @@ -52,6 +53,7 @@ %bcond_without python2 %bcond_without python3 %bcond_without python3_other +%bcond_without python3_greenlet %bcond_without gloox %bcond_without geoip # This only exists on EL7 @@ -83,6 +85,7 @@ %if 0%{?rhel} == 8 %bcond_without go %bcond_without python3 +%bcond_without python3_greenlet %bcond_without ruby19 %bcond_without tuntap %bcond_without zeromq @@ -121,6 +124,8 @@ %if 0%{?rhel} == 9 %bcond_without go %bcond_without python3 +# EPEL9 does not have python-greenlet-devel any more +%bcond_with python3_greenlet %bcond_without ruby19 %bcond_without tuntap # EPEL9 doesn't have zeromq yet @@ -186,7 +191,7 @@ Name: uwsgi Version: 2.0.21 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -234,6 +239,8 @@ BuildRequires: python-greenlet-devel %endif %if %{with python3} BuildRequires: python%{python3_pkgversion}-devel +%endif +%if %{with python3_greenlet} BuildRequires: python%{python3_pkgversion}-greenlet-devel %endif %if %{with python3_other} @@ -743,7 +750,7 @@ This package contains the Python 2 greenlet plugin for uWSGI %endif %endif -%if %{with python3} +%if %{with python3_greenlet} %package -n uwsgi-plugin-python%{python3_pkgversion}-greenlet Summary: uWSGI - Plugin for Python %{python3_version} Greenlet support Requires: python%{python3_pkgversion}-greenlet, uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} @@ -1308,7 +1315,7 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v %if %{with python2_greenlet} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/greenlet fedora %endif -%if %{with python3} +%if %{with python3_greenlet} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/greenlet fedora python%{python3_pkgversion}_greenlet %endif %if %{with glusterfs} @@ -1613,7 +1620,7 @@ exit 0 %{_libdir}/uwsgi/greenlet_plugin.so %endif -%if %{with python3} +%if %{with python3_greenlet} %files -n uwsgi-plugin-python%{python3_pkgversion}-greenlet %{_libdir}/uwsgi/python%{python3_pkgversion}_greenlet_plugin.so %endif @@ -1837,6 +1844,10 @@ exit 0 %changelog +* Thu Jun 15 2023 Ralf Ertzinger - 2.0.21-9 +- Rework Ruby patches +- Disable python3-greenlet plugin for EPEL9 + * Thu Jun 15 2023 Python Maint - 2.0.21-8 - Rebuilt for Python 3.12 diff --git a/uwsgi_fix_ruby_taint.patch b/uwsgi_fix_ruby_taint.patch index 720fb81..31f649a 100644 --- a/uwsgi_fix_ruby_taint.patch +++ b/uwsgi_fix_ruby_taint.patch @@ -1,6 +1,6 @@ diff -uNr a/plugins/rack/rack_plugin.c b/plugins/rack/rack_plugin.c --- a/plugins/rack/rack_plugin.c 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/rack/rack_plugin.c 2023-04-22 21:18:03.451028685 +0200 ++++ b/plugins/rack/rack_plugin.c 2023-06-13 21:47:46.514179214 +0200 @@ -456,7 +456,11 @@ static void rack_hack_dollar_zero(VALUE name, ID id) { @@ -14,26 +14,26 @@ diff -uNr a/plugins/rack/rack_plugin.c b/plugins/rack/rack_plugin.c #ifndef RUBY19 diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py 2023-04-22 21:17:26.854810444 +0200 -+++ b/plugins/rack/uwsgiplugin.py 2023-04-22 21:18:03.454028704 +0200 -@@ -18,6 +18,8 @@ +--- a/plugins/rack/uwsgiplugin.py 2023-06-13 21:46:52.300833924 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2023-06-13 21:48:54.740613764 +0200 +@@ -19,6 +19,8 @@ CFLAGS.append('-DRUBY19') - if version >= '2.0': - CFLAGS.append('-DRUBY20') -+ if version >= '2.7': -+ CFLAGS.append('-DRUBY27') CFLAGS.append('-Wno-unused-parameter') rbconfig = 'RbConfig' ++ if v >= (2, 7): ++ CFLAGS.append('-DRUBY27') else: + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['CFLAGS']\"" % rbconfig).read().rstrip().split() + diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py 2023-04-22 21:17:26.854810444 +0200 -+++ b/plugins/ruby19/uwsgiplugin.py 2023-04-22 21:18:36.479225658 +0200 -@@ -18,6 +18,8 @@ +--- a/plugins/ruby19/uwsgiplugin.py 2023-06-13 21:46:52.300833924 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py 2023-06-13 21:49:24.566803721 +0200 +@@ -19,6 +19,8 @@ CFLAGS.append('-DRUBY19') - if version >= '2.0': - CFLAGS.append('-DRUBY20') -+ if version >= '2.7': -+ CFLAGS.append('-DRUBY27') CFLAGS.append('-Wno-unused-parameter') rbconfig = 'RbConfig' ++ if v >= (2, 7): ++ CFLAGS.append('-DRUBY27') else: + CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['CFLAGS']\"" % rbconfig).read().rstrip().split() + diff --git a/uwsgi_ruby20_compatibility.patch b/uwsgi_ruby20_compatibility.patch index b4bf20d..6ac05dd 100644 --- a/uwsgi_ruby20_compatibility.patch +++ b/uwsgi_ruby20_compatibility.patch @@ -1,42 +1,34 @@ -diff --git a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py -index 2375bc9..b908417 100644 ---- a/plugins/rack/uwsgiplugin.py -+++ b/plugins/rack/uwsgiplugin.py -@@ -10,13 +10,14 @@ except: +diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py 2023-06-13 22:05:49.685878391 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2023-06-13 22:07:22.640425653 +0200 +@@ -10,11 +10,11 @@ rbconfig = 'Config' version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() -v = version.split('.') ++v = tuple(int(x) for x in version.split('.')) GCC_LIST = ['rack_plugin', 'rack_api'] -if (v[0] == '1' and v[1] == '9') or v[0] >= '2': -+if version >= '1.9': ++if v >= (1, 9): CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() CFLAGS.append('-DRUBY19') -+ if version >= '2.0': -+ CFLAGS.append('-DRUBY20') CFLAGS.append('-Wno-unused-parameter') - rbconfig = 'RbConfig' - else: -diff --git a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py -index 4f35984..156018f 100644 ---- a/plugins/ruby19/uwsgiplugin.py -+++ b/plugins/ruby19/uwsgiplugin.py -@@ -10,13 +10,14 @@ except: +diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py 2023-06-13 22:05:49.685878391 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py 2023-06-13 22:07:13.470371664 +0200 +@@ -10,11 +10,11 @@ rbconfig = 'Config' version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() -v = version.split('.') ++v = tuple(int(x) for x in version.split('.')) GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api'] -if v[0] == '1' and v[1] == '9': -+if version >= '1.9': ++if v >= (1, 9): CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() CFLAGS.append('-DRUBY19') -+ if version >= '2.0': -+ CFLAGS.append('-DRUBY20') CFLAGS.append('-Wno-unused-parameter') - rbconfig = 'RbConfig' - else: From 5a83c85c740b621d57f26afb23052409e162bf45 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Thu, 15 Jun 2023 22:51:02 +0200 Subject: [PATCH 373/427] Rebuilt for Python 3.12 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 0e7782a..8397438 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -191,7 +191,7 @@ Name: uwsgi Version: 2.0.21 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1844,6 +1844,9 @@ exit 0 %changelog +* Thu Jun 15 2023 Python Maint - 2.0.21-10 +- Rebuilt for Python 3.12 + * Thu Jun 15 2023 Ralf Ertzinger - 2.0.21-9 - Rework Ruby patches - Disable python3-greenlet plugin for EPEL9 From 03e47f3db8883478f9275ffad633ad36cf612680 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 11 Jul 2023 15:47:10 +0200 Subject: [PATCH 374/427] Perl 5.38 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 8397438..6c427e8 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -191,7 +191,7 @@ Name: uwsgi Version: 2.0.21 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1844,6 +1844,9 @@ exit 0 %changelog +* Tue Jul 11 2023 Jitka Plesnikova - 2.0.21-11 +- Perl 5.38 rebuild + * Thu Jun 15 2023 Python Maint - 2.0.21-10 - Rebuilt for Python 3.12 From 9c7aeda8491a6f9bc7a0f3fcadd6ef6957bfdab8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jul 2023 17:21:11 +0000 Subject: [PATCH 375/427] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6c427e8..a9eb650 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -191,7 +191,7 @@ Name: uwsgi Version: 2.0.21 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1844,6 +1844,9 @@ exit 0 %changelog +* Sat Jul 22 2023 Fedora Release Engineering - 2.0.21-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Jul 11 2023 Jitka Plesnikova - 2.0.21-11 - Perl 5.38 rebuild From 36451ce9eb7e6059d948397d22e3fe00a1ec9ebe Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sun, 30 Jul 2023 09:48:50 +0200 Subject: [PATCH 376/427] Update to 2.0.22 This updates uwsgi to 2.0.22. It also adds an (incomplete) patch to support python 3.12, used in the upcoming Fedora 39. --- .gitignore | 2 + sources | 4 +- uwsgi.spec | 25 +++---- uwsgi_fix_jvm_missing_path.patch | 12 +++ uwsgi_fix_ruby_taint.patch | 24 ------ uwsgi_python312.patch | 124 +++++++++++++++++++++++++++++++ uwsgi_ruby20_compatibility.patch | 22 ++++-- 7 files changed, 167 insertions(+), 46 deletions(-) create mode 100644 uwsgi_fix_jvm_missing_path.patch create mode 100644 uwsgi_python312.patch diff --git a/.gitignore b/.gitignore index a8a8f9c..70d60d7 100644 --- a/.gitignore +++ b/.gitignore @@ -50,3 +50,5 @@ /uwsgi-docs-9b4ef5f.tar.gz /uwsgi-2.0.21.tar.gz /uwsgi-docs-47e1794.tar.gz +/uwsgi-2.0.22.tar.gz +/uwsgi-docs-9c89fef.tar.gz diff --git a/sources b/sources index d55d324..fbbca13 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.21.tar.gz) = 36a9c1b87a4c3d08482b9045d2227f56b006acb53f38ddf1b510880ae5fc24c0177a077338ec8af3ef0b8f8e220bc4fc7f8311dab8066e13cbcbb616f736c795 -SHA512 (uwsgi-docs-47e1794.tar.gz) = 8fa66303b405da519f986e8a848439bb76d8043a860bb468e43fb451b672a5234ec1a06835b47f0e9bb467bab1bc0daf7fae387dfa1ef0ed3a3a501234fc5950 +SHA512 (uwsgi-2.0.22.tar.gz) = 28aaf786a88f034752ce980f6ae04ee5ea361443ffad7d7e9ec9a88a60dd63c649a44c2d41bb6ddc1572c321567da4c3985f907498bf250e2cd7cd11f4686303 +SHA512 (uwsgi-docs-9c89fef.tar.gz) = be7dfcc3a55ec7a7b9531b5570120d47f9ad304193f55ee73651b2024faaeea07fa4f8e358458dd15c3e36e06f02b757fe6e2db07f952ab2563168a396f68d43 diff --git a/uwsgi.spec b/uwsgi.spec index a9eb650..f00a9ca 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 47e17949d0fd95e524d4f90cc58a3fcb11bc0bae +%global commit 9c89fef106799ddd6f5b383936853afecd2c0cce %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -190,8 +190,8 @@ %endif Name: uwsgi -Version: 2.0.21 -Release: 12%{?dist} +Version: 2.0.22 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -217,14 +217,9 @@ Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/issues/2283 Patch12: uwsgi_fix_php8.patch Patch13: uwsgi_fix_chroot_chdir.patch -# https://github.com/unbit/uwsgi/issues/2356 -Patch14: uwsgi_fix_php_arginfo.patch -Patch15: uwsgi_fix_python_py_ssize_t.patch -Patch16: uwsgi_python311.patch -# https://github.com/unbit/uwsgi/pull/2400 -Patch17: uwsgi_fix_php81_filename_zend_string.patch -Patch18: uwsgi_fix_php82.patch -Patch19: uwsgi_fix_ruby_taint.patch +# https://github.com/unbit/uwsgi/issues/2552 +Patch20: uwsgi_fix_jvm_missing_path.patch +Patch21: uwsgi_python312.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1248,8 +1243,8 @@ cp -p %{SOURCE5} README.Fedora %endif %patch12 -p1 %patch13 -p1 -%patch18 -p1 -%patch19 -p1 +%patch20 -p1 +%patch21 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1844,6 +1839,10 @@ exit 0 %changelog +* Fri Jul 28 2023 Ralf Ertzinger - 2.0.22-1 +- Update to 2.0.22 +- Add initial patch for building against python3.12 + * Sat Jul 22 2023 Fedora Release Engineering - 2.0.21-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/uwsgi_fix_jvm_missing_path.patch b/uwsgi_fix_jvm_missing_path.patch new file mode 100644 index 0000000..29960d8 --- /dev/null +++ b/uwsgi_fix_jvm_missing_path.patch @@ -0,0 +1,12 @@ +diff -uNr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +--- a/plugins/jvm/uwsgiplugin.py 2023-07-28 20:59:42.036749911 +0200 ++++ b/plugins/jvm/uwsgiplugin.py 2023-07-28 21:00:11.079400969 +0200 +@@ -36,7 +36,7 @@ + for jvm in known_jvms: + if os.path.exists(jvm + '/include'): + JVM_INCPATH = ["-I%s/include/" % jvm, "-I%s/include/%s" % (jvm, operating_system)] +- if os.path.exists("%s/jre"): ++ if os.path.exists("%s/jre" % jvm): + JVM_LIBPATH = ["-L%s/jre/lib/%s/server" % (jvm, arch)] + else: + JVM_LIBPATH = ["-L%s/lib/server" % (jvm,)] diff --git a/uwsgi_fix_ruby_taint.patch b/uwsgi_fix_ruby_taint.patch index 31f649a..df7fe16 100644 --- a/uwsgi_fix_ruby_taint.patch +++ b/uwsgi_fix_ruby_taint.patch @@ -13,27 +13,3 @@ diff -uNr a/plugins/rack/rack_plugin.c b/plugins/rack/rack_plugin.c } #ifndef RUBY19 -diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py 2023-06-13 21:46:52.300833924 +0200 -+++ b/plugins/rack/uwsgiplugin.py 2023-06-13 21:48:54.740613764 +0200 -@@ -19,6 +19,8 @@ - CFLAGS.append('-DRUBY19') - CFLAGS.append('-Wno-unused-parameter') - rbconfig = 'RbConfig' -+ if v >= (2, 7): -+ CFLAGS.append('-DRUBY27') - else: - CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['CFLAGS']\"" % rbconfig).read().rstrip().split() - -diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py 2023-06-13 21:46:52.300833924 +0200 -+++ b/plugins/ruby19/uwsgiplugin.py 2023-06-13 21:49:24.566803721 +0200 -@@ -19,6 +19,8 @@ - CFLAGS.append('-DRUBY19') - CFLAGS.append('-Wno-unused-parameter') - rbconfig = 'RbConfig' -+ if v >= (2, 7): -+ CFLAGS.append('-DRUBY27') - else: - CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['CFLAGS']\"" % rbconfig).read().rstrip().split() - diff --git a/uwsgi_python312.patch b/uwsgi_python312.patch new file mode 100644 index 0000000..f04080e --- /dev/null +++ b/uwsgi_python312.patch @@ -0,0 +1,124 @@ +diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c +--- a/plugins/python/python_plugin.c 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/python/python_plugin.c 2023-07-13 19:35:32.020467751 +0200 +@@ -1161,7 +1161,10 @@ + + // prepare for stack suspend/resume + if (uwsgi.async > 1) { +-#ifdef UWSGI_PY311 ++#ifdef UWSGI_PY312 ++ up.current_c_recursion_remaining = uwsgi_malloc(sizeof(int)*uwsgi.async); ++ up.current_py_recursion_remaining = uwsgi_malloc(sizeof(int)*uwsgi.async); ++#elif defined UWSGI_PY311 + up.current_recursion_remaining = uwsgi_malloc(sizeof(int)*uwsgi.async); + #else + up.current_recursion_depth = uwsgi_malloc(sizeof(int)*uwsgi.async); +@@ -1324,7 +1327,12 @@ + // Acquire the gil and import lock before forking in order to avoid + // deadlocks in workers + UWSGI_GET_GIL ++#if defined UWSGI_PY312 ++ PyInterpreterState *interp = PyInterpreterState_Get(); ++ _PyImport_AcquireLock(interp); ++#else + _PyImport_AcquireLock(); ++#endif + } + } + +@@ -1336,7 +1344,12 @@ + if (uwsgi.has_threads) { + if (step == 0) { + // Release locks within master process ++#if defined UWSGI_PY312 ++ PyInterpreterState *interp = PyInterpreterState_Get(); ++ _PyImport_ReleaseLock(interp); ++#else + _PyImport_ReleaseLock(); ++#endif + UWSGI_RELEASE_GIL + } + else { +@@ -1592,7 +1605,11 @@ + PyGILState_Release(pgst); + + if (wsgi_req) { +-#ifdef UWSGI_PY311 ++#ifdef UWSGI_PY312 ++ up.current_c_recursion_remaining[wsgi_req->async_id] = tstate->c_recursion_remaining; ++ up.current_py_recursion_remaining[wsgi_req->async_id] = tstate->py_recursion_remaining; ++ up.current_frame[wsgi_req->async_id] = tstate->cframe; ++#elif defined UWSGI_PY311 + up.current_recursion_remaining[wsgi_req->async_id] = tstate->recursion_remaining; + up.current_frame[wsgi_req->async_id] = tstate->cframe; + #else +@@ -1601,7 +1618,11 @@ + #endif + } + else { +-#ifdef UWSGI_PY311 ++#ifdef UWSGI_PY312 ++ up.current_main_c_recursion_remaining = tstate->c_recursion_remaining; ++ up.current_main_py_recursion_remaining = tstate->py_recursion_remaining; ++ up.current_main_frame = tstate->cframe; ++#elif defined UWSGI_PY311 + up.current_main_recursion_remaining = tstate->recursion_remaining; + up.current_main_frame = tstate->cframe; + #else +@@ -1835,7 +1856,11 @@ + PyGILState_Release(pgst); + + if (wsgi_req) { +-#ifdef UWSGI_PY311 ++#ifdef UWSGI_PY312 ++ tstate->c_recursion_remaining = up.current_c_recursion_remaining[wsgi_req->async_id]; ++ tstate->py_recursion_remaining = up.current_py_recursion_remaining[wsgi_req->async_id]; ++ tstate->cframe = up.current_frame[wsgi_req->async_id]; ++#elif defined UWSGI_PY311 + tstate->recursion_remaining = up.current_recursion_remaining[wsgi_req->async_id]; + tstate->cframe = up.current_frame[wsgi_req->async_id]; + #else +@@ -1844,7 +1869,11 @@ + #endif + } + else { +-#ifdef UWSGI_PY311 ++#ifdef UWSGI_PY312 ++ tstate->c_recursion_remaining = up.current_main_c_recursion_remaining; ++ tstate->py_recursion_remaining = up.current_main_py_recursion_remaining; ++ tstate->cframe = up.current_main_frame; ++#elif defined UWSGI_PY311 + tstate->recursion_remaining = up.current_main_recursion_remaining; + tstate->cframe = up.current_main_frame; + #else +diff -uNr a/plugins/python/uwsgi_python.h b/plugins/python/uwsgi_python.h +--- a/plugins/python/uwsgi_python.h 2022-10-24 12:21:58.000000000 +0200 ++++ b/plugins/python/uwsgi_python.h 2023-07-13 19:31:50.798050705 +0200 +@@ -21,6 +21,10 @@ + # define UWSGI_PY311 + #endif + ++#if (PY_VERSION_HEX >= 0x030c0000) ++# define UWSGI_PY312 ++#endif ++ + #if PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7 + #define HAS_NOT_PyMemoryView_FromBuffer + #endif +@@ -168,7 +172,15 @@ + + char *callable; + +-#ifdef UWSGI_PY311 ++#ifdef UWSGI_PY312 ++ int *current_c_recursion_remaining; ++ int *current_py_recursion_remaining; ++ _PyCFrame **current_frame; ++ ++ int current_main_c_recursion_remaining; ++ int current_main_py_recursion_remaining; ++ _PyCFrame *current_main_frame; ++#elif defined UWSGI_PY311 + int *current_recursion_remaining; + _PyCFrame **current_frame; + diff --git a/uwsgi_ruby20_compatibility.patch b/uwsgi_ruby20_compatibility.patch index 6ac05dd..6fdaa02 100644 --- a/uwsgi_ruby20_compatibility.patch +++ b/uwsgi_ruby20_compatibility.patch @@ -1,7 +1,7 @@ diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py 2023-06-13 22:05:49.685878391 +0200 -+++ b/plugins/rack/uwsgiplugin.py 2023-06-13 22:07:22.640425653 +0200 -@@ -10,11 +10,11 @@ +--- a/plugins/rack/uwsgiplugin.py 2023-07-28 20:02:57.242903528 +0200 ++++ b/plugins/rack/uwsgiplugin.py 2023-07-28 20:05:59.933863052 +0200 +@@ -10,14 +10,14 @@ rbconfig = 'Config' version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() @@ -14,11 +14,15 @@ diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +if v >= (1, 9): CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() CFLAGS.append('-DRUBY19') +- if version >= '2.7': ++ if v >= (2, 7): + CFLAGS.append('-DRUBY27') CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py 2023-06-13 22:05:49.685878391 +0200 -+++ b/plugins/ruby19/uwsgiplugin.py 2023-06-13 22:07:13.470371664 +0200 -@@ -10,11 +10,11 @@ +--- a/plugins/ruby19/uwsgiplugin.py 2023-07-28 20:02:57.242903528 +0200 ++++ b/plugins/ruby19/uwsgiplugin.py 2023-07-28 20:05:11.560403332 +0200 +@@ -10,14 +10,14 @@ rbconfig = 'Config' version = os.popen(RUBYPATH + " -e \"print RUBY_VERSION\"").read().rstrip() @@ -27,8 +31,12 @@ diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py GCC_LIST = ['../rack/rack_plugin', '../rack/rack_api'] --if v[0] == '1' and v[1] == '9': +-if (v[0] == '1' and v[1] == '9') or v[0] >= '2': +if v >= (1, 9): CFLAGS = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['CFLAGS']\"").read().rstrip().split() CFLAGS.append('-DRUBY19') +- if version >= '2.7': ++ if v >= (2, 7): + CFLAGS.append('-DRUBY27') CFLAGS.append('-Wno-unused-parameter') + rbconfig = 'RbConfig' From e8deb619aad81e10f352447e2e98758d231f4d44 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Fri, 15 Sep 2023 18:16:22 +0200 Subject: [PATCH 377/427] For Fedora 39, build an extra module against Python 3.11 Disable PIE and enable PIC for the mail executable to avoid crashes when using the PHP module (see BZ2203863) --- uwsgi.spec | 57 ++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 14 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index f00a9ca..e7717c6 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -3,6 +3,17 @@ %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs +# The default compile options of uwsgi and php disagree in subtle ways, +# leading to potential crashes when uwsgi loads the php module, and php itself +# loads certain of its own modules. +# +# The "proper" solution for this would be to change the way php is compiled. +# In the interim, disabling PIE for uwsgi, and enabling PIC for the main +# uwsgi executable can work around the issue. +# +# See https://bugzilla.redhat.com/show_bug.cgi?id=2203863 +%undefine _hardened_build + %{!?_httpd_apxs: %{expand: %%global _httpd_apxs %%{_sbindir}/apxs}} %{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}} @@ -43,6 +54,19 @@ %else %bcond_without gridfs %endif + +# Fedora 39 ships with python 3.12, which at this point isn't supported +# by uwsgi. To get a working python module, build against the (still +# existing) python3.11, too +%if 0%{?fedora} == 39 +%bcond_without python3_other +%define python3_other_pkgversion 3.11 +%define python3_other_version 3.11 +%define python3_other_version_nodots 311 +%define __python3_other python3.11 +%define python3_other_sitelib %(RPM_BUILD_ROOT= %{__python3_other} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))") +%endif + #Fedora endif %endif @@ -191,7 +215,7 @@ Name: uwsgi Version: 2.0.22 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -368,7 +392,7 @@ access to the uWSGI API. %package -n python%{python3_other_pkgversion}-uwsgidecorators Summary: Python %{python3_other_version} decorators providing access to the uwsgi API Requires: uwsgi = %{version}-%{release} -Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_other_version_nodots} = %{version}-%{release} %description -n python%{python3_other_pkgversion}-uwsgidecorators The uwsgidecorators Python %{python3_other_version} module provides @@ -715,11 +739,11 @@ This package contains the Python %{python3_version} gevent plugin for uWSGI %endif %if %{with python3_other} -%package -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent +%package -n uwsgi-plugin-python%{python3_other_version_nodots}-gevent Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support -Requires: uwsgi-plugin-python%{python3_other_pkgversion} = %{version}-%{release}, libevent +Requires: uwsgi-plugin-python%{python3_other_version_nodots} = %{version}-%{release}, libevent -%description -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent +%description -n uwsgi-plugin-python%{python3_other_version_nodots}-gevent This package contains the Python %{python3_other_version} gevent plugin for uWSGI %endif @@ -874,11 +898,11 @@ This package contains the Python %{python3_version} plugin for uWSGI %endif %if %{with python3_other} -%package -n uwsgi-plugin-python%{python3_other_pkgversion} +%package -n uwsgi-plugin-python%{python3_other_version_nodots} Summary: uWSGI - Plugin for Python %{python3_other_version} support Requires: python%{python3_other_pkgversion}, uwsgi-plugin-common = %{version}-%{release} -%description -n uwsgi-plugin-python%{python3_other_pkgversion} +%description -n uwsgi-plugin-python%{python3_other_version_nodots} This package contains the Python %{python3_other_version} plugin for uWSGI %endif @@ -1251,7 +1275,7 @@ cp -p %{SOURCE5} README.Fedora %endif %build -CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --build fedora.ini +CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini %if %{with python2} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --verbose --plugin plugins/python fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python2} uwsgiconfig.py --verbose --plugin plugins/gevent fedora @@ -1263,8 +1287,8 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif %if %{with python3_other} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_other_pkgversion} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_other_pkgversion}_gevent +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_other_version_nodots} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_other_version_nodots}_gevent %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongodblog fedora @@ -1601,8 +1625,8 @@ exit 0 %endif %if %{with python3_other} -%files -n uwsgi-plugin-python%{python3_other_pkgversion}-gevent -%{_libdir}/uwsgi/python%{python3_other_pkgversion}_gevent_plugin.so +%files -n uwsgi-plugin-python%{python3_other_version_nodots}-gevent +%{_libdir}/uwsgi/python%{python3_other_version_nodots}_gevent_plugin.so %endif %if %{with glusterfs} @@ -1680,8 +1704,8 @@ exit 0 %endif %if %{with python3_other} -%files -n uwsgi-plugin-python%{python3_other_pkgversion} -%{_libdir}/uwsgi/python%{python3_other_pkgversion}_plugin.so +%files -n uwsgi-plugin-python%{python3_other_version_nodots} +%{_libdir}/uwsgi/python%{python3_other_version_nodots}_plugin.so %endif %files -n uwsgi-plugin-rack @@ -1839,6 +1863,11 @@ exit 0 %changelog +* Fri Sep 15 2023 Ralf Ertzinger - 2.0.22-2 +- For Fedora 39, build an extra module against Python 3.11 +- Disable PIE and enable PIC for the mail executable to avoid crashes when using + the PHP module (see BZ2203863) + * Fri Jul 28 2023 Ralf Ertzinger - 2.0.22-1 - Update to 2.0.22 - Add initial patch for building against python3.12 From c7c20878872f61487c9c70b718dc14b99ffa143d Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 16 Sep 2023 20:01:03 +0200 Subject: [PATCH 378/427] Extend building the python 3.11 module to rawhide --- uwsgi.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index e7717c6..4f83576 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -55,10 +55,10 @@ %bcond_without gridfs %endif -# Fedora 39 ships with python 3.12, which at this point isn't supported +# Fedora 39+ ships with python 3.12, which at this point isn't supported # by uwsgi. To get a working python module, build against the (still # existing) python3.11, too -%if 0%{?fedora} == 39 +%if 0%{?fedora} > 38 %bcond_without python3_other %define python3_other_pkgversion 3.11 %define python3_other_version 3.11 From 6e64b872732dbe908cca993a86c9c156e2620b5e Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 16 Sep 2023 20:12:35 +0200 Subject: [PATCH 379/427] Changes missing from previous commit (release/clog) --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 4f83576..37c5ddf 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -215,7 +215,7 @@ Name: uwsgi Version: 2.0.22 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1863,6 +1863,9 @@ exit 0 %changelog +* Sat Sep 16 2023 Ralf Ertzinger - 2.0.22-3 +- Extend building the python 3.11 module to rawhide + * Fri Sep 15 2023 Ralf Ertzinger - 2.0.22-2 - For Fedora 39, build an extra module against Python 3.11 - Disable PIE and enable PIC for the mail executable to avoid crashes when using From a5bb2db7fa743a2307b5a9c899602b8bc73e1fd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 26 Sep 2023 12:02:01 +0200 Subject: [PATCH 380/427] Don't build the Python 3.11 module on Fedora 39+, it is not installable --- uwsgi.spec | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 37c5ddf..19bb967 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -54,19 +54,6 @@ %else %bcond_without gridfs %endif - -# Fedora 39+ ships with python 3.12, which at this point isn't supported -# by uwsgi. To get a working python module, build against the (still -# existing) python3.11, too -%if 0%{?fedora} > 38 -%bcond_without python3_other -%define python3_other_pkgversion 3.11 -%define python3_other_version 3.11 -%define python3_other_version_nodots 311 -%define __python3_other python3.11 -%define python3_other_sitelib %(RPM_BUILD_ROOT= %{__python3_other} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))") -%endif - #Fedora endif %endif @@ -215,7 +202,7 @@ Name: uwsgi Version: 2.0.22 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1863,6 +1850,10 @@ exit 0 %changelog +* Tue Sep 26 2023 Miro Hrončok - 2.0.22-4 +- Don't build the Python 3.11 module on Fedora 39+, it is not installable +- Fixes: rhbz#2239671 + * Sat Sep 16 2023 Ralf Ertzinger - 2.0.22-3 - Extend building the python 3.11 module to rawhide From 32a630388928fafbff4da458238e9d732ca3d3fa Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 30 Sep 2023 19:02:38 +0200 Subject: [PATCH 381/427] Rework python 3.12 patch --- uwsgi.spec | 5 ++++- uwsgi_python312.patch | 50 +++++++++++++++++++++++++++++++++---------- 2 files changed, 43 insertions(+), 12 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 19bb967..d011722 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -202,7 +202,7 @@ Name: uwsgi Version: 2.0.22 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1850,6 +1850,9 @@ exit 0 %changelog +* Sat Sep 30 2023 Ralf Ertzinger - 2.0.22-5 +- Rework python 3.12 patch + * Tue Sep 26 2023 Miro Hrončok - 2.0.22-4 - Don't build the Python 3.11 module on Fedora 39+, it is not installable - Fixes: rhbz#2239671 diff --git a/uwsgi_python312.patch b/uwsgi_python312.patch index f04080e..7595cd2 100644 --- a/uwsgi_python312.patch +++ b/uwsgi_python312.patch @@ -1,7 +1,35 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c ---- a/plugins/python/python_plugin.c 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/python/python_plugin.c 2023-07-13 19:35:32.020467751 +0200 -@@ -1161,7 +1161,10 @@ +--- a/plugins/python/python_plugin.c 2023-07-27 17:34:12.000000000 +0200 ++++ b/plugins/python/python_plugin.c 2023-09-30 18:30:47.884490233 +0200 +@@ -197,6 +197,7 @@ + PyMethodDef uwsgi_spit_method[] = { {"uwsgi_spit", py_uwsgi_spit, METH_VARARGS, ""} }; + PyMethodDef uwsgi_write_method[] = { {"uwsgi_write", py_uwsgi_write, METH_VARARGS, ""} }; + ++PyObject *init_uwsgi3(void); + int uwsgi_python_init() { + + char *pyversion = strchr(Py_GetVersion(), '\n'); +@@ -261,6 +262,9 @@ + wchar_t *pname = uwsgi_calloc(sizeof(wchar_t) * (strlen(program_name)+1)); + mbstowcs(pname, program_name, strlen(program_name)+1); + Py_SetProgramName(pname); ++#ifdef UWSGI_PY312 ++ PyImport_AppendInittab("uwsgi", init_uwsgi3); ++#endif + #else + Py_SetProgramName(program_name); + #endif +@@ -658,7 +662,9 @@ + + + #ifdef PYTHREE ++#ifndef UWSGI_PY312 + PyImport_AppendInittab("uwsgi", init_uwsgi3); ++#endif + new_uwsgi_module = PyImport_AddModule("uwsgi"); + #else + new_uwsgi_module = Py_InitModule3("uwsgi", NULL, uwsgi_py_doc); +@@ -1161,7 +1167,10 @@ // prepare for stack suspend/resume if (uwsgi.async > 1) { @@ -13,7 +41,7 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c up.current_recursion_remaining = uwsgi_malloc(sizeof(int)*uwsgi.async); #else up.current_recursion_depth = uwsgi_malloc(sizeof(int)*uwsgi.async); -@@ -1324,7 +1327,12 @@ +@@ -1324,7 +1333,12 @@ // Acquire the gil and import lock before forking in order to avoid // deadlocks in workers UWSGI_GET_GIL @@ -26,7 +54,7 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c } } -@@ -1336,7 +1344,12 @@ +@@ -1336,7 +1350,12 @@ if (uwsgi.has_threads) { if (step == 0) { // Release locks within master process @@ -39,7 +67,7 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c UWSGI_RELEASE_GIL } else { -@@ -1592,7 +1605,11 @@ +@@ -1592,7 +1611,11 @@ PyGILState_Release(pgst); if (wsgi_req) { @@ -52,7 +80,7 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c up.current_recursion_remaining[wsgi_req->async_id] = tstate->recursion_remaining; up.current_frame[wsgi_req->async_id] = tstate->cframe; #else -@@ -1601,7 +1618,11 @@ +@@ -1601,7 +1624,11 @@ #endif } else { @@ -65,7 +93,7 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c up.current_main_recursion_remaining = tstate->recursion_remaining; up.current_main_frame = tstate->cframe; #else -@@ -1835,7 +1856,11 @@ +@@ -1835,7 +1862,11 @@ PyGILState_Release(pgst); if (wsgi_req) { @@ -78,7 +106,7 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c tstate->recursion_remaining = up.current_recursion_remaining[wsgi_req->async_id]; tstate->cframe = up.current_frame[wsgi_req->async_id]; #else -@@ -1844,7 +1869,11 @@ +@@ -1844,7 +1875,11 @@ #endif } else { @@ -92,8 +120,8 @@ diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c tstate->cframe = up.current_main_frame; #else diff -uNr a/plugins/python/uwsgi_python.h b/plugins/python/uwsgi_python.h ---- a/plugins/python/uwsgi_python.h 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/python/uwsgi_python.h 2023-07-13 19:31:50.798050705 +0200 +--- a/plugins/python/uwsgi_python.h 2023-07-27 17:34:12.000000000 +0200 ++++ b/plugins/python/uwsgi_python.h 2023-09-30 18:30:24.766699317 +0200 @@ -21,6 +21,10 @@ # define UWSGI_PY311 #endif From 6bb552f1a3f9714eb99c00b118fc9dd4390731f1 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 3 Oct 2023 10:51:38 +0200 Subject: [PATCH 382/427] rebuild for https://fedoraproject.org/wiki/Changes/php83 add patch for PHP 8.3 from https://github.com/unbit/uwsgi/pull/2559 --- uwsgi.spec | 32 ++++++++++++++++---------- uwsgi_fix_php83.patch | 52 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 12 deletions(-) create mode 100644 uwsgi_fix_php83.patch diff --git a/uwsgi.spec b/uwsgi.spec index d011722..589d036 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -202,7 +202,7 @@ Name: uwsgi Version: 2.0.22 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -228,6 +228,8 @@ Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/issues/2283 Patch12: uwsgi_fix_php8.patch Patch13: uwsgi_fix_chroot_chdir.patch +# https://github.com/unbit/uwsgi/pull/2559 +Patch14: uwsgi_fix_php83.patch # https://github.com/unbit/uwsgi/issues/2552 Patch20: uwsgi_fix_jvm_missing_path.patch Patch21: uwsgi_python312.patch @@ -1239,23 +1241,24 @@ Fully Apache API compliant proxy module cp -p %{SOURCE1} buildconf/ echo "plugin_dir = %{_libdir}/uwsgi" >> buildconf/fedora.ini cp -p %{SOURCE5} README.Fedora -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 +%patch -P0 -p1 +%patch -P1 -p1 +%patch -P2 -p1 +%patch -P3 -p1 %if 0%{?fedora} -%patch5 -p1 +%patch -P5 -p1 %endif %if %{with v8} && 0%{?fedora} -%patch6 -p1 +%patch -P6 -p1 %endif %if %{with mono} -%patch7 -p1 +%patch -P7 -p1 %endif -%patch12 -p1 -%patch13 -p1 -%patch20 -p1 -%patch21 -p1 +%patch -P12 -p1 +%patch -P13 -p1 +%patch -P14 -p1 +%patch -P20 -p1 +%patch -P21 -p1 %if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} %{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py @@ -1850,6 +1853,11 @@ exit 0 %changelog +* Tue Oct 03 2023 Remi Collet - 2.0.22-6 +- rebuild for https://fedoraproject.org/wiki/Changes/php83 +- add patch for PHP 8.3 from + https://github.com/unbit/uwsgi/pull/2559 + * Sat Sep 30 2023 Ralf Ertzinger - 2.0.22-5 - Rework python 3.12 patch diff --git a/uwsgi_fix_php83.patch b/uwsgi_fix_php83.patch new file mode 100644 index 0000000..ed343a9 --- /dev/null +++ b/uwsgi_fix_php83.patch @@ -0,0 +1,52 @@ +From 064984116e86ac0a5d5d3805765395b661fc4455 Mon Sep 17 00:00:00 2001 +From: Remi Collet +Date: Mon, 4 Sep 2023 13:10:52 +0200 +Subject: [PATCH] ini_entries is read-only PHP 8.3 + +--- + plugins/php/php_plugin.c | 18 ++++++++++-------- + 1 file changed, 10 insertions(+), 8 deletions(-) + +diff --git a/plugins/php/php_plugin.c b/plugins/php/php_plugin.c +index b3efa006a..d9b615bac 100644 +--- a/plugins/php/php_plugin.c ++++ b/plugins/php/php_plugin.c +@@ -27,6 +27,7 @@ struct uwsgi_php { + char *fallback; + char *fallback2; + char *fallback_qs; ++ char *ini_entries; + size_t ini_size; + int dump_config; + char *server_software; +@@ -232,21 +233,22 @@ static sapi_module_struct uwsgi_sapi_module; + + void uwsgi_php_append_config(char *filename) { + size_t file_size = 0; +- char *file_content = uwsgi_open_and_read(filename, &file_size, 1, NULL); +- uwsgi_sapi_module.ini_entries = realloc(uwsgi_sapi_module.ini_entries, uphp.ini_size + file_size); +- memcpy(uwsgi_sapi_module.ini_entries + uphp.ini_size, file_content, file_size); ++ char *file_content = uwsgi_open_and_read(filename, &file_size, 1, NULL); ++ uphp.ini_entries = realloc(uphp.ini_entries, uphp.ini_size + file_size); ++ memcpy(uphp.ini_entries + uphp.ini_size, file_content, file_size); + uphp.ini_size += file_size-1; + free(file_content); ++ uwsgi_sapi_module.ini_entries = uphp.ini_entries; + } + + void uwsgi_php_set(char *opt) { + +- uwsgi_sapi_module.ini_entries = realloc(uwsgi_sapi_module.ini_entries, uphp.ini_size + strlen(opt)+2); +- memcpy(uwsgi_sapi_module.ini_entries + uphp.ini_size, opt, strlen(opt)); +- ++ uphp.ini_entries = realloc(uphp.ini_entries, uphp.ini_size + strlen(opt)+2); ++ memcpy(uphp.ini_entries + uphp.ini_size, opt, strlen(opt)); + uphp.ini_size += strlen(opt)+1; +- uwsgi_sapi_module.ini_entries[uphp.ini_size-1] = '\n'; +- uwsgi_sapi_module.ini_entries[uphp.ini_size] = 0; ++ uphp.ini_entries[uphp.ini_size-1] = '\n'; ++ uphp.ini_entries[uphp.ini_size] = 0; ++ uwsgi_sapi_module.ini_entries = uphp.ini_entries; + } + + extern ps_module ps_mod_uwsgi; From 196bf72239ee89bb5a7d7cbec2d987dcc295d369 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 21 Oct 2023 19:15:17 +0200 Subject: [PATCH 383/427] Drop 2to3 call, it doesn't do anything anymore --- uwsgi.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 589d036..9be4b99 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -202,7 +202,7 @@ Name: uwsgi Version: 2.0.22 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1260,10 +1260,6 @@ cp -p %{SOURCE5} README.Fedora %patch -P20 -p1 %patch -P21 -p1 -%if %{with perl} && (%{with python3} || %{with python3_other}) && %{with perlcoro} -%{__python} -m lib2to3 --write --nobackups plugins/coroae/uwsgiplugin.py -%endif - %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini %if %{with python2} @@ -1853,6 +1849,9 @@ exit 0 %changelog +* Sat Oct 21 2023 Ralf Ertzinger - 2.0.22-7 +- Drop 2to3 call, it doesn't do anything anymore + * Tue Oct 03 2023 Remi Collet - 2.0.22-6 - rebuild for https://fedoraproject.org/wiki/Changes/php83 - add patch for PHP 8.3 from From 0bbf1dd4645a8c1d72bb1b2770ddd8c436778e90 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 21 Oct 2023 19:17:26 +0200 Subject: [PATCH 384/427] Add comment for adding patches --- uwsgi.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/uwsgi.spec b/uwsgi.spec index 9be4b99..d4bcf0f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -217,6 +217,8 @@ Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo} Source5: README.Fedora Source7: uwsgi.tmpfiles +# When adding patches please add to the end, don't +# reuse intermediate numbers Patch0: uwsgi_trick_chroot_rpmbuild.patch Patch1: uwsgi_fix_rpath.patch Patch2: uwsgi_ruby20_compatibility.patch From b6771ca19fd5acfb2834ccf85ade717739f3a232 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 2 Nov 2023 21:31:30 +0100 Subject: [PATCH 385/427] Update to 2.0.23, drop merged patches --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 17 ++++++----------- 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 70d60d7..b43ef6c 100644 --- a/.gitignore +++ b/.gitignore @@ -52,3 +52,5 @@ /uwsgi-docs-47e1794.tar.gz /uwsgi-2.0.22.tar.gz /uwsgi-docs-9c89fef.tar.gz +/uwsgi-2.0.23.tar.gz +/uwsgi-docs-3be14d3.tar.gz diff --git a/sources b/sources index fbbca13..6c2dafd 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.22.tar.gz) = 28aaf786a88f034752ce980f6ae04ee5ea361443ffad7d7e9ec9a88a60dd63c649a44c2d41bb6ddc1572c321567da4c3985f907498bf250e2cd7cd11f4686303 -SHA512 (uwsgi-docs-9c89fef.tar.gz) = be7dfcc3a55ec7a7b9531b5570120d47f9ad304193f55ee73651b2024faaeea07fa4f8e358458dd15c3e36e06f02b757fe6e2db07f952ab2563168a396f68d43 +SHA512 (uwsgi-2.0.23.tar.gz) = 4060dd66f8c6309497b52a961c36a58fe2b3b3afc7e11b97cfa464757c614d1d44ccc561b18500a394b5d95e5660eae48759003a30ec07379a6f079f63f3899b +SHA512 (uwsgi-docs-3be14d3.tar.gz) = 73f517fc1bb5efaa7f39ee2084011c6d3a16ab02ae590d134140eee09e27b57f5ae444c733c654ad0ec430f4627902d23a934d84d3dec431ae14fc76bf26326c diff --git a/uwsgi.spec b/uwsgi.spec index d4bcf0f..ca35ebe 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 9c89fef106799ddd6f5b383936853afecd2c0cce +%global commit 3be14d357b7b73a82311db034de034f8c09035e8 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -201,8 +201,8 @@ %endif Name: uwsgi -Version: 2.0.22 -Release: 7%{?dist} +Version: 2.0.23 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -230,11 +230,6 @@ Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/issues/2283 Patch12: uwsgi_fix_php8.patch Patch13: uwsgi_fix_chroot_chdir.patch -# https://github.com/unbit/uwsgi/pull/2559 -Patch14: uwsgi_fix_php83.patch -# https://github.com/unbit/uwsgi/issues/2552 -Patch20: uwsgi_fix_jvm_missing_path.patch -Patch21: uwsgi_python312.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1258,9 +1253,6 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P12 -p1 %patch -P13 -p1 -%patch -P14 -p1 -%patch -P20 -p1 -%patch -P21 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1851,6 +1843,9 @@ exit 0 %changelog +* Thu Nov 02 2023 Ralf Ertzinger - 2.0.23-1 +- Update to 2.0.23, drop merged patches + * Sat Oct 21 2023 Ralf Ertzinger - 2.0.22-7 - Drop 2to3 call, it doesn't do anything anymore From 5d4ae9e199f581f2ed702e5eb63c9773c3af5ab4 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 3 Jan 2024 23:13:45 +0900 Subject: [PATCH 386/427] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index ca35ebe..76140f4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -202,7 +202,7 @@ Name: uwsgi Version: 2.0.23 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1843,6 +1843,9 @@ exit 0 %changelog +* Wed Jan 03 2024 Mamoru TASAKA - 2.0.23-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 + * Thu Nov 02 2023 Ralf Ertzinger - 2.0.23-1 - Update to 2.0.23, drop merged patches From c8dfeab0b8df6dd98ff5b677098e3117449d4266 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 23 Jan 2024 21:25:42 +0100 Subject: [PATCH 387/427] Add reworked patch for python3.12 --- uwsgi.spec | 2 + uwsgi_python312-2.patch | 82 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 uwsgi_python312-2.patch diff --git a/uwsgi.spec b/uwsgi.spec index 76140f4..6dee064 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -230,6 +230,7 @@ Patch7: uwsgi_fix_mono.patch # https://github.com/unbit/uwsgi/issues/2283 Patch12: uwsgi_fix_php8.patch Patch13: uwsgi_fix_chroot_chdir.patch +Patch14: uwsgi_python312-2.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1253,6 +1254,7 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P12 -p1 %patch -P13 -p1 +%patch -P14 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini diff --git a/uwsgi_python312-2.patch b/uwsgi_python312-2.patch new file mode 100644 index 0000000..7a2d6b3 --- /dev/null +++ b/uwsgi_python312-2.patch @@ -0,0 +1,82 @@ +diff --git a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c +index de92f34c..08d99a96 100644 +--- a/plugins/python/python_plugin.c ++++ b/plugins/python/python_plugin.c +@@ -233,21 +233,6 @@ void uwsgi_python_pthread_child(void) { + PyMethodDef uwsgi_spit_method[] = { {"uwsgi_spit", py_uwsgi_spit, METH_VARARGS, ""} }; + PyMethodDef uwsgi_write_method[] = { {"uwsgi_write", py_uwsgi_write, METH_VARARGS, ""} }; + +-PyDoc_STRVAR(uwsgi_py_doc, "uWSGI api module."); +- +-#ifdef PYTHREE +-static PyModuleDef uwsgi_module3 = { +- PyModuleDef_HEAD_INIT, +- "uwsgi", +- uwsgi_py_doc, +- -1, +- NULL, +-}; +-PyObject *init_uwsgi3(void) { +- return PyModule_Create(&uwsgi_module3); +-} +-#endif +- + int uwsgi_python_init() { + + char *pyversion = strchr(Py_GetVersion(), '\n'); +@@ -313,9 +298,6 @@ pep405: + wchar_t *pname = uwsgi_calloc(sizeof(wchar_t) * (strlen(program_name)+1)); + mbstowcs(pname, program_name, strlen(program_name)+1); + Py_SetProgramName(pname); +-#ifdef UWSGI_PY312 +- PyImport_AppendInittab("uwsgi", init_uwsgi3); +-#endif + #else + Py_SetProgramName(program_name); + #endif +@@ -678,6 +660,21 @@ next: + + + ++PyDoc_STRVAR(uwsgi_py_doc, "uWSGI api module."); ++ ++#ifdef PYTHREE ++static PyModuleDef uwsgi_module3 = { ++ PyModuleDef_HEAD_INIT, ++ "uwsgi", ++ uwsgi_py_doc, ++ -1, ++ NULL, ++}; ++PyObject *init_uwsgi3(void) { ++ return PyModule_Create(&uwsgi_module3); ++} ++#endif ++ + void init_uwsgi_embedded_module() { + PyObject *new_uwsgi_module, *zero; + int i; +@@ -698,10 +695,21 @@ void init_uwsgi_embedded_module() { + + + #ifdef PYTHREE +-#ifndef UWSGI_PY312 ++# ifndef UWSGI_PY312 + PyImport_AppendInittab("uwsgi", init_uwsgi3); +-#endif + new_uwsgi_module = PyImport_AddModule("uwsgi"); ++# else ++ // From python 3.12 onwards, PyImport_AppendInittab() can no ++ // longer be called after Py_Initialize(). Instead, dynamically ++ // add the module instead ++ PyObject *sys_modules; ++ PyImport_AddModule("uwsgi"); ++ new_uwsgi_module = init_uwsgi3(); ++ sys_modules = PyImport_GetModuleDict(); ++ PyDict_SetItemString(sys_modules, "uwsgi", new_uwsgi_module); ++ Py_DECREF(new_uwsgi_module); ++ ++# endif + #else + new_uwsgi_module = Py_InitModule3("uwsgi", NULL, uwsgi_py_doc); + #endif From 94be6255864e2ebd1e2d87a234aaf11ccb062d0b Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 23 Jan 2024 21:26:52 +0100 Subject: [PATCH 388/427] Build plugin for python3.11 under EPEL9 --- uwsgi.spec | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 6dee064..90e1d6b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -174,6 +174,19 @@ %else %bcond_without gridfs %endif + +# EL9 has multiple python3 versions, but does not provide the +# convenience macros that EL7 has. Set those ourselves. +# +# This needs some serious rework after EL7 is gone. +%bcond_without python3_other +%if %{with python3_other} +%global python3_other_pkgversion 3.11 +%global __python3_other python3.11 +%global python3_other_sitelib %(RPM_BUILD_ROOT= %{__python3_other} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_other_version 3.11 +%global python3_other_version_nodots 311 +%endif #EL9 endif %endif @@ -202,7 +215,7 @@ Name: uwsgi Version: 2.0.23 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1845,6 +1858,10 @@ exit 0 %changelog +* Tue Jan 23 2024 Ralf Ertzinger - 2.0.23-2 +- Add reworked patch for python3.12 +- Build plugin for python3.11 under EPEL9 + * Wed Jan 03 2024 Mamoru TASAKA - 2.0.23-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 From 65dfd0fc879c2f471f7ccbb50a0d7b5483091cca Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 07:23:48 +0000 Subject: [PATCH 389/427] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 90e1d6b..ef88779 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -215,7 +215,7 @@ Name: uwsgi Version: 2.0.23 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1858,6 +1858,9 @@ exit 0 %changelog +* Sat Jan 27 2024 Fedora Release Engineering - 2.0.23-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Tue Jan 23 2024 Ralf Ertzinger - 2.0.23-2 - Add reworked patch for python3.12 - Build plugin for python3.11 under EPEL9 From b9c84238a9972a43075fa18303ae6c6745cdf7bf Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 10 Feb 2024 21:46:05 +0100 Subject: [PATCH 390/427] Update to 2.0.24, drop merged patches --- .gitignore | 2 + sources | 4 +- uwsgi.spec | 16 ++++--- uwsgi_fix_gcc_format_signedness.patch | 64 +++++++++++++++++++++++++++ uwsgi_fix_glusterfs_io_cb.patch | 13 ++++++ uwsgi_fix_rpath.patch | 42 +++++++++--------- 6 files changed, 112 insertions(+), 29 deletions(-) create mode 100644 uwsgi_fix_gcc_format_signedness.patch create mode 100644 uwsgi_fix_glusterfs_io_cb.patch diff --git a/.gitignore b/.gitignore index b43ef6c..8d25461 100644 --- a/.gitignore +++ b/.gitignore @@ -54,3 +54,5 @@ /uwsgi-docs-9c89fef.tar.gz /uwsgi-2.0.23.tar.gz /uwsgi-docs-3be14d3.tar.gz +/uwsgi-2.0.24.tar.gz +/uwsgi-docs-4e23afe.tar.gz diff --git a/sources b/sources index 6c2dafd..41ee9d8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.23.tar.gz) = 4060dd66f8c6309497b52a961c36a58fe2b3b3afc7e11b97cfa464757c614d1d44ccc561b18500a394b5d95e5660eae48759003a30ec07379a6f079f63f3899b -SHA512 (uwsgi-docs-3be14d3.tar.gz) = 73f517fc1bb5efaa7f39ee2084011c6d3a16ab02ae590d134140eee09e27b57f5ae444c733c654ad0ec430f4627902d23a934d84d3dec431ae14fc76bf26326c +SHA512 (uwsgi-2.0.24.tar.gz) = 55af38c1518409f8351c93a027f97958a8cdf36b1b5750dc316b9bc1cd35f9c3243c078e743c3b435c6c86d0991d5575c719326cc05ca9aad7d26dbdb78ab335 +SHA512 (uwsgi-docs-4e23afe.tar.gz) = 52ad1bdae491261aa3055241eeb6b9d12180b2a7b28b25b586453fe4fb6caf44755944e257ddddaf41c2b8dfb66b89cd0017a52036c8d54ecb7e4a8140edb76a diff --git a/uwsgi.spec b/uwsgi.spec index ef88779..15ef702 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 3be14d357b7b73a82311db034de034f8c09035e8 +%global commit 4e23afe3582b85103098b6047c349cffa552d692 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -214,8 +214,8 @@ %endif Name: uwsgi -Version: 2.0.23 -Release: 4%{?dist} +Version: 2.0.24 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -240,10 +240,10 @@ Patch3: uwsgi_fix_lua.patch Patch5: uwsgi_fix_mongodb.patch Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch -# https://github.com/unbit/uwsgi/issues/2283 -Patch12: uwsgi_fix_php8.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch +Patch15: uwsgi_fix_gcc_format_signedness.patch +Patch16: uwsgi_fix_glusterfs_io_cb.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1265,9 +1265,10 @@ cp -p %{SOURCE5} README.Fedora %if %{with mono} %patch -P7 -p1 %endif -%patch -P12 -p1 %patch -P13 -p1 %patch -P14 -p1 +%patch -P15 -p1 +%patch -P16 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1858,6 +1859,9 @@ exit 0 %changelog +* Sat Feb 10 2024 Ralf Ertzinger - 2.0.24-1 +- Update to 2.0.24, drop merged patches + * Sat Jan 27 2024 Fedora Release Engineering - 2.0.23-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/uwsgi_fix_gcc_format_signedness.patch b/uwsgi_fix_gcc_format_signedness.patch new file mode 100644 index 0000000..44daae1 --- /dev/null +++ b/uwsgi_fix_gcc_format_signedness.patch @@ -0,0 +1,64 @@ +diff -uNr a/uwsgiconfig.py b/uwsgiconfig.py +--- a/uwsgiconfig.py 2024-02-09 21:30:45.436292711 +0100 ++++ b/uwsgiconfig.py 2024-02-09 21:32:29.607595604 +0100 +@@ -690,7 +690,27 @@ + '-D_LARGEFILE_SOURCE', + '-D_FILE_OFFSET_BITS=64' + ] +- if "gcc" in GCC: ++ ++ gcc_version = spcall("%s -dumpversion" % GCC) ++ if not gcc_version and GCC.startswith('gcc'): ++ if uwsgi_os == 'Darwin': ++ GCC = 'llvm-' + GCC ++ else: ++ GCC = 'gcc' ++ gcc_version = spcall("%s -dumpversion" % GCC) ++ ++ try: ++ gcc_version_components = gcc_version.split('.') ++ gcc_major = int(gcc_version_components[0]) ++ if len(gcc_version_components) > 1: ++ gcc_minor = int(gcc_version_components[1]) ++ else: ++ # gcc 5.0 is represented as simply "5" ++ gcc_minor = 0 ++ except Exception: ++ raise Exception("you need a C compiler to build uWSGI") ++ ++ if "gcc" in GCC and gcc_major >= 5: + cflags.append('-Wformat-signedness') + self.cflags = cflags + os.environ.get("CFLAGS", "").split() + self.get('cflags', '').split() + +@@ -710,14 +730,6 @@ + if uwsgi_os == 'GNU': + self.cflags.append('-D__HURD__') + +- gcc_version = spcall("%s -dumpversion" % GCC) +- if not gcc_version and GCC.startswith('gcc'): +- if uwsgi_os == 'Darwin': +- GCC = 'llvm-' + GCC +- else: +- GCC = 'gcc' +- gcc_version = spcall("%s -dumpversion" % GCC) +- + try: + add_it = False + cpp_include_list = str(spcall3("%s -v" % CPP)).split("\n") +@@ -750,16 +762,6 @@ + if not mute: + print("detected include path: %s" % self.include_path) + +- try: +- gcc_version_components = gcc_version.split('.') +- gcc_major = int(gcc_version_components[0]) +- if len(gcc_version_components) > 1: +- gcc_minor = int(gcc_version_components[1]) +- else: +- # gcc 5.0 is represented as simply "5" +- gcc_minor = 0 +- except: +- raise Exception("you need a C compiler to build uWSGI") + if (sys.version_info[0] == 2) or (gcc_major < 4) or (gcc_major == 4 and gcc_minor < 3): + self.cflags = self.cflags + ['-fno-strict-aliasing'] + # add -fno-strict-aliasing only on python2 and gcc < 4.3 diff --git a/uwsgi_fix_glusterfs_io_cb.patch b/uwsgi_fix_glusterfs_io_cb.patch new file mode 100644 index 0000000..aa5d71b --- /dev/null +++ b/uwsgi_fix_glusterfs_io_cb.patch @@ -0,0 +1,13 @@ +diff --git a/plugins/glusterfs/glusterfs.c b/plugins/glusterfs/glusterfs.c +index 83428faf..c0063f4e 100644 +--- a/plugins/glusterfs/glusterfs.c ++++ b/plugins/glusterfs/glusterfs.c +@@ -46,7 +46,7 @@ struct uwsgi_glusterfs_async_io { + ssize_t rlen; + }; + +-static void uwsgi_glusterfs_read_async_cb(glfs_fd_t *fd, ssize_t rlen, void *data) { ++static void uwsgi_glusterfs_read_async_cb(glfs_fd_t *fd, ssize_t rlen, struct glfs_stat *prestat, struct glfs_stat *poststat, void *data) { + struct uwsgi_glusterfs_async_io *aio = (struct uwsgi_glusterfs_async_io *) data; + #ifdef UWSGI_DEBUG + uwsgi_log("[glusterfs-cb] rlen = %d\n", rlen); diff --git a/uwsgi_fix_rpath.patch b/uwsgi_fix_rpath.patch index cb9295b..c05d4b8 100644 --- a/uwsgi_fix_rpath.patch +++ b/uwsgi_fix_rpath.patch @@ -1,7 +1,7 @@ -diff -uNwr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py ---- a/plugins/jvm/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/jvm/uwsgiplugin.py 2022-10-27 20:37:16.544261133 +0200 -@@ -66,11 +66,6 @@ +diff -uNr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py +--- a/plugins/jvm/uwsgiplugin.py 2024-02-08 17:35:28.000000000 +0100 ++++ b/plugins/jvm/uwsgiplugin.py 2024-02-08 21:55:26.627134235 +0100 +@@ -69,11 +69,6 @@ GCC_LIST = ['jvm_plugin'] @@ -13,21 +13,21 @@ diff -uNwr a/plugins/jvm/uwsgiplugin.py b/plugins/jvm/uwsgiplugin.py def post_build(config): if subprocess.call("javac %s/plugins/jvm/uwsgi.java" % os.getcwd(), shell=True) != 0: os._exit(1) -diff -uNwr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py ---- a/plugins/php/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/php/uwsgiplugin.py 2022-10-27 20:37:39.006374938 +0200 +diff -uNr a/plugins/php/uwsgiplugin.py b/plugins/php/uwsgiplugin.py +--- a/plugins/php/uwsgiplugin.py 2024-02-08 17:35:28.000000000 +0100 ++++ b/plugins/php/uwsgiplugin.py 2024-02-08 21:56:28.630427541 +0100 @@ -19,7 +19,6 @@ if ld_run_path: LDFLAGS.append('-L%s' % ld_run_path) - os.environ['LD_RUN_PATH'] = ld_run_path - LIBS = [os.popen(PHPPATH + ' --libs').read().rstrip(), '-lphp' + php_version] - -diff -uNwr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py ---- a/plugins/python/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/python/uwsgiplugin.py 2022-10-27 20:38:16.898566910 +0200 -@@ -62,9 +62,6 @@ + # PHP8 and above does not add the version to the library + # name +diff -uNr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py +--- a/plugins/python/uwsgiplugin.py 2024-02-08 17:35:28.000000000 +0100 ++++ b/plugins/python/uwsgiplugin.py 2024-02-08 21:55:26.654133927 +0100 +@@ -88,9 +88,6 @@ libdir = "%s/lib" % sysconfig.PREFIX LDFLAGS.append("-L%s" % libdir) @@ -37,10 +37,10 @@ diff -uNwr a/plugins/python/uwsgiplugin.py b/plugins/python/uwsgiplugin.py LIBS.append('-lpython%s' % get_python_version()) else: -diff -uNwr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py ---- a/plugins/rack/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/rack/uwsgiplugin.py 2022-10-27 20:38:50.787738600 +0200 -@@ -46,7 +46,6 @@ +diff -uNr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py +--- a/plugins/rack/uwsgiplugin.py 2024-02-08 17:35:28.000000000 +0100 ++++ b/plugins/rack/uwsgiplugin.py 2024-02-08 21:55:26.655133916 +0100 +@@ -48,7 +48,6 @@ if has_shared == 'yes': LDFLAGS.append('-L' + libpath ) @@ -48,10 +48,10 @@ diff -uNwr a/plugins/rack/uwsgiplugin.py b/plugins/rack/uwsgiplugin.py LIBS.append(os.popen(RUBYPATH + " -e \"require 'rbconfig';print '-l' + %s::CONFIG['RUBY_SO_NAME']\"" % rbconfig).read().rstrip()) else: rubylibdir = os.popen(RUBYPATH + " -e \"require 'rbconfig';print RbConfig::CONFIG['rubylibdir']\"").read().rstrip() -diff -uNwr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py ---- a/plugins/ruby19/uwsgiplugin.py 2022-10-24 12:21:58.000000000 +0200 -+++ b/plugins/ruby19/uwsgiplugin.py 2022-10-27 20:39:48.879032934 +0200 -@@ -40,6 +40,5 @@ +diff -uNr a/plugins/ruby19/uwsgiplugin.py b/plugins/ruby19/uwsgiplugin.py +--- a/plugins/ruby19/uwsgiplugin.py 2024-02-08 17:35:28.000000000 +0100 ++++ b/plugins/ruby19/uwsgiplugin.py 2024-02-08 21:55:26.655133916 +0100 +@@ -42,6 +42,5 @@ libpath = os.popen(RUBYPATH + " -e \"require 'rbconfig';print %s::CONFIG['libdir']\"" % rbconfig).read().rstrip() LDFLAGS.append('-L' + libpath ) From d986271efb6b3cd099be8676ce0861a692b8522f Mon Sep 17 00:00:00 2001 From: Dominik 'Rathann' Mierzejewski Date: Tue, 19 Mar 2024 10:57:17 +0100 Subject: [PATCH 391/427] Rebuilt for gloox-1.0.28 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 15ef702..374f0f7 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -215,7 +215,7 @@ Name: uwsgi Version: 2.0.24 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1859,6 +1859,9 @@ exit 0 %changelog +* Tue Mar 19 2024 Dominik Mierzejewski - 2.0.24-2 +- Rebuilt for gloox-1.0.28 + * Sat Feb 10 2024 Ralf Ertzinger - 2.0.24-1 - Update to 2.0.24, drop merged patches From 5017f0c5b9700da99f95bcc831dc8fae53aa3d80 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 16 Apr 2024 20:24:11 +0200 Subject: [PATCH 392/427] Update to 2.0.25.1, drop merged patches Use github.com as source for the main tarball Do not build for i686 any more --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 19 +++++++++++-------- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 8d25461..7951476 100644 --- a/.gitignore +++ b/.gitignore @@ -56,3 +56,5 @@ /uwsgi-docs-3be14d3.tar.gz /uwsgi-2.0.24.tar.gz /uwsgi-docs-4e23afe.tar.gz +/2.0.25.1.tar.gz +/uwsgi-docs-8dcaacd.tar.gz diff --git a/sources b/sources index 41ee9d8..9afac1d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (uwsgi-2.0.24.tar.gz) = 55af38c1518409f8351c93a027f97958a8cdf36b1b5750dc316b9bc1cd35f9c3243c078e743c3b435c6c86d0991d5575c719326cc05ca9aad7d26dbdb78ab335 -SHA512 (uwsgi-docs-4e23afe.tar.gz) = 52ad1bdae491261aa3055241eeb6b9d12180b2a7b28b25b586453fe4fb6caf44755944e257ddddaf41c2b8dfb66b89cd0017a52036c8d54ecb7e4a8140edb76a +SHA512 (2.0.25.1.tar.gz) = 3b2a78917b129f5a2f38f3538e30b132e4cd6e270df55365ccc0dc6b94641a262af1484c62b252d0a24121eb68417cb061210e89e2b7885992ab4ffa07092119 +SHA512 (uwsgi-docs-8dcaacd.tar.gz) = 03f520652becb4409e9cf5fe30a2ce5595693786a08dac9ee59e05a7ba29283dced45f2416e8ccf758b1064f3002e34d6ae9fa166af5eea5cdbc99aaaf36ec4f diff --git a/uwsgi.spec b/uwsgi.spec index 374f0f7..08f0cf4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 4e23afe3582b85103098b6047c349cffa552d692 +%global commit 8dcaacd4900accea52939f5495bfffd0f7408ad1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -214,15 +214,17 @@ %endif Name: uwsgi -Version: 2.0.24 -Release: 2%{?dist} +Version: 2.0.25.1 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT License: GPLv2 with exceptions and MIT URL: https://github.com/unbit/uwsgi -Source0: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz +ExcludeArch: %{ix86} + +Source0: https://github.com/unbit/uwsgi/archive/refs/tags/%{version}.tar.gz Source1: fedora.ini Source2: uwsgi.service Source3: emperor.ini @@ -242,8 +244,6 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch -Patch15: uwsgi_fix_gcc_format_signedness.patch -Patch16: uwsgi_fix_glusterfs_io_cb.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1267,8 +1267,6 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 -%patch -P15 -p1 -%patch -P16 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1859,6 +1857,11 @@ exit 0 %changelog +* Tue Apr 16 2024 Ralf Ertzinger - 2.0.25.1-1 +- Update to 2.0.25.1, drop merged patches +- Use github.com as source for the main tarball +- Do not build for i686 any more + * Tue Mar 19 2024 Dominik Mierzejewski - 2.0.24-2 - Rebuilt for gloox-1.0.28 From 64940f3b452c5534234fd73f068a789d23de2bd7 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 9 May 2024 20:34:52 +0200 Subject: [PATCH 393/427] Rework support for multiple python versions --- uwsgi.spec | 171 ++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 124 insertions(+), 47 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 08f0cf4..a9ffd3b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -63,7 +63,14 @@ %bcond_without java %bcond_without python2 %bcond_without python3 -%bcond_without python3_other +%bcond_without python3_alternate1 +%if %{with python3_alternate1} +%global python3_alternate1_pkgname python34 +%global __python3_alternate1 python3.4 +%global python3_alternate1_version 3.4 +%global python3_alternate1_version_nodots 34 +%global python3_alternate1_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate1} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%endif %bcond_without python3_greenlet %bcond_without gloox %bcond_without geoip @@ -179,13 +186,21 @@ # convenience macros that EL7 has. Set those ourselves. # # This needs some serious rework after EL7 is gone. -%bcond_without python3_other -%if %{with python3_other} -%global python3_other_pkgversion 3.11 -%global __python3_other python3.11 -%global python3_other_sitelib %(RPM_BUILD_ROOT= %{__python3_other} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} -%global python3_other_version 3.11 -%global python3_other_version_nodots 311 +%bcond_without python3_alternate1 +%if %{with python3_alternate1} +%global python3_alternate1_pkgname python3.11 +%global __python3_alternate1 python3.11 +%global python3_alternate1_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate1} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate1_version 3.11 +%global python3_alternate1_version_nodots 311 +%endif +%bcond_without python3_alternate2 +%if %{with python3_alternate2} +%global python3_alternate2_pkgname python3.12 +%global __python3_alternate2 python3.12 +%global python3_alternate2_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate2} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate2_version 3.12 +%global python3_alternate2_version_nodots 312 %endif #EL9 endif %endif @@ -202,8 +217,11 @@ %if %{with python3} %global __python %{__python3} %else -%if %{with python3_other} -%global __python %{__python3_other} +%if %{with python3_alternate1} +%global __python %{__python3_alternate1} +%else +%if %{with python3_alternate2} +%global __python %{__python3_alternate2} %else %if %{with python2} %global __python %{__python2} @@ -212,10 +230,11 @@ %endif %endif %endif +%endif Name: uwsgi Version: 2.0.25.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -262,8 +281,11 @@ BuildRequires: python%{python3_pkgversion}-devel %if %{with python3_greenlet} BuildRequires: python%{python3_pkgversion}-greenlet-devel %endif -%if %{with python3_other} -BuildRequires: python%{python3_other_pkgversion}-devel +%if %{with python3_alternate1} +BuildRequires: %{python3_alternate1_pkgname}-devel +%endif +%if %{with python3_alternate2} +BuildRequires: %{python3_alternate2_pkgname}-devel %endif %if %{with glusterfs} BuildRequires: glusterfs-devel, glusterfs-api-devel @@ -388,14 +410,25 @@ The uwsgidecorators Python %{python3_version} module provides higher-level access to the uWSGI API. %endif -%if %{with python3_other} -%package -n python%{python3_other_pkgversion}-uwsgidecorators -Summary: Python %{python3_other_version} decorators providing access to the uwsgi API +%if %{with python3_alternate1} +%package -n %{python3_alternate1_pkgname}-uwsgidecorators +Summary: Python %{python3_alternate1_version} decorators providing access to the uwsgi API Requires: uwsgi = %{version}-%{release} -Requires: uwsgi-plugin-python%{python3_other_version_nodots} = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_alternate1_version_nodots} = %{version}-%{release} -%description -n python%{python3_other_pkgversion}-uwsgidecorators -The uwsgidecorators Python %{python3_other_version} module provides +%description -n %{python3_alternate1_pkgname}-uwsgidecorators +The uwsgidecorators Python %{python3_alternate1_version} module provides +higher-level access to the uWSGI API. +%endif + +%if %{with python3_alternate2} +%package -n %{python3_alternate2_pkgname}-uwsgidecorators +Summary: Python %{python3_alternate2_version} decorators providing access to the uwsgi API +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_alternate2_version_nodots} = %{version}-%{release} + +%description -n %{python3_alternate2_pkgname}-uwsgidecorators +The uwsgidecorators Python %{python3_alternate2_version} module provides higher-level access to the uWSGI API. %endif @@ -738,13 +771,22 @@ Requires: uwsgi-plugin-python%{python3_pkgversion} = %{version}-%{release} This package contains the Python %{python3_version} gevent plugin for uWSGI %endif -%if %{with python3_other} -%package -n uwsgi-plugin-python%{python3_other_version_nodots}-gevent -Summary: uWSGI - Plugin for Python %{python3_other_version} GEvent support -Requires: uwsgi-plugin-python%{python3_other_version_nodots} = %{version}-%{release}, libevent +%if %{with python3_alternate1} +%package -n uwsgi-plugin-python%{python3_alternate1_version_nodots}-gevent +Summary: uWSGI - Plugin for Python %{python3_alternate1_version} GEvent support +Requires: uwsgi-plugin-python%{python3_alternate1_version_nodots} = %{version}-%{release}, libevent -%description -n uwsgi-plugin-python%{python3_other_version_nodots}-gevent -This package contains the Python %{python3_other_version} gevent plugin for uWSGI +%description -n uwsgi-plugin-python%{python3_alternate1_version_nodots}-gevent +This package contains the Python %{python3_alternate1_version} gevent plugin for uWSGI +%endif + +%if %{with python3_alternate2} +%package -n uwsgi-plugin-python%{python3_alternate2_version_nodots}-gevent +Summary: uWSGI - Plugin for Python %{python3_alternate2_version} GEvent support +Requires: uwsgi-plugin-python%{python3_alternate2_version_nodots} = %{version}-%{release}, libevent + +%description -n uwsgi-plugin-python%{python3_alternate2_version_nodots}-gevent +This package contains the Python %{python3_alternate2_version} gevent plugin for uWSGI %endif %if %{with glusterfs} @@ -897,13 +939,22 @@ Provides: uwsgi-plugin-python3 = %{version}-%{release} This package contains the Python %{python3_version} plugin for uWSGI %endif -%if %{with python3_other} -%package -n uwsgi-plugin-python%{python3_other_version_nodots} -Summary: uWSGI - Plugin for Python %{python3_other_version} support -Requires: python%{python3_other_pkgversion}, uwsgi-plugin-common = %{version}-%{release} +%if %{with python3_alternate1} +%package -n uwsgi-plugin-python%{python3_alternate1_version_nodots} +Summary: uWSGI - Plugin for Python %{python3_alternate1_version} support +Requires: %{python3_alternate1_pkgname}, uwsgi-plugin-common = %{version}-%{release} -%description -n uwsgi-plugin-python%{python3_other_version_nodots} -This package contains the Python %{python3_other_version} plugin for uWSGI +%description -n uwsgi-plugin-python%{python3_alternate1_version_nodots} +This package contains the Python %{python3_alternate1_version} plugin for uWSGI +%endif + +%if %{with python3_alternate2} +%package -n uwsgi-plugin-python%{python3_alternate2_version_nodots} +Summary: uWSGI - Plugin for Python %{python3_alternate2_version} support +Requires: %{python3_alternate2_pkgname}, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-python%{python3_alternate2_version_nodots} +This package contains the Python %{python3_alternate2_version} plugin for uWSGI %endif %package -n uwsgi-plugin-rack @@ -1280,9 +1331,13 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py -- CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_pkgversion}_gevent CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3} uwsgiconfig.py --verbose --plugin plugins/tornado fedora python%{python3_pkgversion}_tornado %endif -%if %{with python3_other} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_other_version_nodots} -CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_other} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_other_version_nodots}_gevent +%if %{with python3_alternate1} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate1} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_alternate1_version_nodots} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate1} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_alternate1_version_nodots}_gevent +%endif +%if %{with python3_alternate2} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate2} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_alternate2_version_nodots} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate2} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_alternate2_version_nodots}_gevent %endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongodblog fedora @@ -1391,10 +1446,16 @@ install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_sitelib}/uwsgidec %py_byte_compile %{__python3} %{buildroot}%{python3_sitelib}/uwsgidecorators.py %endif %endif -%if %{with python3_other} -install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py +%if %{with python3_alternate1} +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_alternate1_sitelib}/uwsgidecorators.py %if %{manual_py_compile} == 1 -%py_byte_compile %{__python3_other} %{buildroot}%{python3_other_sitelib}/uwsgidecorators.py +%py_byte_compile %{__python3_alternate1} %{buildroot}%{python3_alternate1_sitelib}/uwsgidecorators.py +%endif +%endif +%if %{with python3_alternate2} +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_alternate2_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 +%py_byte_compile %{__python3_alternate2} %{buildroot}%{python3_alternate2_sitelib}/uwsgidecorators.py %endif %endif %if %{with java} @@ -1452,10 +1513,16 @@ exit 0 %{python3_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_version_nodots}*.py* %endif -%if %{with python3_other} -%files -n python%{python3_other_pkgversion}-uwsgidecorators -%{python3_other_sitelib}/uwsgidecorators.py -%{python3_other_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_other_version_nodots}*.py* +%if %{with python3_alternate1} +%files -n %{python3_alternate1_pkgname}-uwsgidecorators +%{python3_alternate1_sitelib}/uwsgidecorators.py +%{python3_alternate1_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_alternate1_version_nodots}*.py* +%endif + +%if %{with python3_alternate2} +%files -n %{python3_alternate2_pkgname}-uwsgidecorators +%{python3_alternate2_sitelib}/uwsgidecorators.py +%{python3_alternate2_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_alternate2_version_nodots}*.py* %endif %files -n uwsgi-docs @@ -1618,9 +1685,14 @@ exit 0 %{_libdir}/uwsgi/python%{python3_pkgversion}_gevent_plugin.so %endif -%if %{with python3_other} -%files -n uwsgi-plugin-python%{python3_other_version_nodots}-gevent -%{_libdir}/uwsgi/python%{python3_other_version_nodots}_gevent_plugin.so +%if %{with python3_alternate1} +%files -n uwsgi-plugin-python%{python3_alternate1_version_nodots}-gevent +%{_libdir}/uwsgi/python%{python3_alternate1_version_nodots}_gevent_plugin.so +%endif + +%if %{with python3_alternate2} +%files -n uwsgi-plugin-python%{python3_alternate2_version_nodots}-gevent +%{_libdir}/uwsgi/python%{python3_alternate2_version_nodots}_gevent_plugin.so %endif %if %{with glusterfs} @@ -1697,9 +1769,14 @@ exit 0 %{_libdir}/uwsgi/python%{python3_pkgversion}_plugin.so %endif -%if %{with python3_other} -%files -n uwsgi-plugin-python%{python3_other_version_nodots} -%{_libdir}/uwsgi/python%{python3_other_version_nodots}_plugin.so +%if %{with python3_alternate1} +%files -n uwsgi-plugin-python%{python3_alternate1_version_nodots} +%{_libdir}/uwsgi/python%{python3_alternate1_version_nodots}_plugin.so +%endif + +%if %{with python3_alternate2} +%files -n uwsgi-plugin-python%{python3_alternate2_version_nodots} +%{_libdir}/uwsgi/python%{python3_alternate2_version_nodots}_plugin.so %endif %files -n uwsgi-plugin-rack From 8a5c0bd8332f5041b1979860727a84a38b4456dd Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 6 Jun 2024 19:07:35 +0200 Subject: [PATCH 394/427] Update to 2.0.26 Rework support for multiple python versions --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 10 +++++++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 7951476..e60ce59 100644 --- a/.gitignore +++ b/.gitignore @@ -58,3 +58,5 @@ /uwsgi-docs-4e23afe.tar.gz /2.0.25.1.tar.gz /uwsgi-docs-8dcaacd.tar.gz +/2.0.26.tar.gz +/uwsgi-docs-59e6cd1.tar.gz diff --git a/sources b/sources index 9afac1d..825b046 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (2.0.25.1.tar.gz) = 3b2a78917b129f5a2f38f3538e30b132e4cd6e270df55365ccc0dc6b94641a262af1484c62b252d0a24121eb68417cb061210e89e2b7885992ab4ffa07092119 -SHA512 (uwsgi-docs-8dcaacd.tar.gz) = 03f520652becb4409e9cf5fe30a2ce5595693786a08dac9ee59e05a7ba29283dced45f2416e8ccf758b1064f3002e34d6ae9fa166af5eea5cdbc99aaaf36ec4f +SHA512 (2.0.26.tar.gz) = 3bb1c7855a5a83eaff18e69f22618794ede2f6df7c8eee42d34163d3319014272223e2c48d013601cd18a17916c5b91b9a0eb4816608442d389c6ae38c83371c +SHA512 (uwsgi-docs-59e6cd1.tar.gz) = db243bcf23417ec4eb87c93f7ec3bc8ef03c122bf61b63ae56f8c2cfc86bda0569023bdd6ecaf130027379792e778ffc3e8621f1493bd6f7499c46ffe8393f43 diff --git a/uwsgi.spec b/uwsgi.spec index a9ffd3b..2b214ed 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 8dcaacd4900accea52939f5495bfffd0f7408ad1 +%global commit 59e6cd1044e20eaae73e5cd8114b77fb38c99ac5 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -233,8 +233,8 @@ %endif Name: uwsgi -Version: 2.0.25.1 -Release: 2%{?dist} +Version: 2.0.26 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1934,6 +1934,10 @@ exit 0 %changelog +* Sat Jun 01 2024 Ralf Ertzinger - 2.0.26-1 +- Update to 2.0.26 +- Rework support for multiple python versions + * Tue Apr 16 2024 Ralf Ertzinger - 2.0.25.1-1 - Update to 2.0.25.1, drop merged patches - Use github.com as source for the main tarball From 0ed57cdb2741951eb6242360b2bbf7e0bca9f33f Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sun, 9 Jun 2024 01:40:22 +0200 Subject: [PATCH 395/427] Rebuilt for Python 3.13 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2b214ed..3d8991d 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -234,7 +234,7 @@ Name: uwsgi Version: 2.0.26 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1934,6 +1934,9 @@ exit 0 %changelog +* Sat Jun 08 2024 Python Maint - 2.0.26-2 +- Rebuilt for Python 3.13 + * Sat Jun 01 2024 Ralf Ertzinger - 2.0.26-1 - Update to 2.0.26 - Rework support for multiple python versions From 4b286aba5ac599a9baeead99d42eb226eccd0f2e Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 12 Jun 2024 12:48:12 +0200 Subject: [PATCH 396/427] Perl 5.40 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 3d8991d..8d34eaf 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -234,7 +234,7 @@ Name: uwsgi Version: 2.0.26 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1934,6 +1934,9 @@ exit 0 %changelog +* Wed Jun 12 2024 Jitka Plesnikova - 2.0.26-3 +- Perl 5.40 rebuild + * Sat Jun 08 2024 Python Maint - 2.0.26-2 - Rebuilt for Python 3.13 From dce67072b9a90e3e2f4edd964a750a1775c06c4e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 08:29:55 +0000 Subject: [PATCH 397/427] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 8d34eaf..51684a4 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -234,7 +234,7 @@ Name: uwsgi Version: 2.0.26 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1934,6 +1934,9 @@ exit 0 %changelog +* Sat Jul 20 2024 Fedora Release Engineering - 2.0.26-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Jun 12 2024 Jitka Plesnikova - 2.0.26-3 - Perl 5.40 rebuild From c0b79e45a5563208c5c602729cea91a98f13aea8 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 15 Aug 2024 19:53:46 +0200 Subject: [PATCH 398/427] Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 Add patch for python 3.13 --- uwsgi.spec | 8 +- uwsgi_python313.patch | 193 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 200 insertions(+), 1 deletion(-) create mode 100644 uwsgi_python313.patch diff --git a/uwsgi.spec b/uwsgi.spec index 51684a4..a66c3df 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -234,7 +234,7 @@ Name: uwsgi Version: 2.0.26 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -263,6 +263,8 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch +# https://github.com/unbit/uwsgi/pull/2655 +Patch15: uwsgi_python313.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1318,6 +1320,7 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 +%patch -P15 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1934,6 +1937,9 @@ exit 0 %changelog +* Tue Aug 13 2024 Ralf Ertzinger - 2.0.26-5 +- Add patch for python 3.13 + * Sat Jul 20 2024 Fedora Release Engineering - 2.0.26-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/uwsgi_python313.patch b/uwsgi_python313.patch new file mode 100644 index 0000000..6031408 --- /dev/null +++ b/uwsgi_python313.patch @@ -0,0 +1,193 @@ +diff -uNr a/core/init.c b/core/init.c +--- a/core/init.c 2024-06-01 20:40:38.000000000 +0200 ++++ b/core/init.c 2024-08-13 09:56:13.152870522 +0200 +@@ -432,8 +432,8 @@ + uwsgi.cores = uwsgi.async; + } + ++ uwsgi.has_threads = 1; + if (uwsgi.threads > 1) { +- uwsgi.has_threads = 1; + uwsgi.cores = uwsgi.threads; + } + +diff -uNr a/core/uwsgi.c b/core/uwsgi.c +--- a/core/uwsgi.c 2024-06-01 20:40:38.000000000 +0200 ++++ b/core/uwsgi.c 2024-08-13 09:56:13.156870522 +0200 +@@ -197,7 +197,7 @@ + {"freebind", no_argument, 0, "put socket in freebind mode", uwsgi_opt_true, &uwsgi.freebind, 0}, + #endif + {"map-socket", required_argument, 0, "map sockets to specific workers", uwsgi_opt_add_string_list, &uwsgi.map_socket, 0}, +- {"enable-threads", no_argument, 'T', "enable threads", uwsgi_opt_true, &uwsgi.has_threads, 0}, ++ {"enable-threads", no_argument, 'T', "enable threads (stub option this is true by default)", uwsgi_opt_true, &uwsgi.has_threads, 0}, + {"no-threads-wait", no_argument, 0, "do not wait for threads cancellation on quit/reload", uwsgi_opt_true, &uwsgi.no_threads_wait, 0}, + + {"auto-procname", no_argument, 0, "automatically set processes name to something meaningful", uwsgi_opt_true, &uwsgi.auto_procname, 0}, +diff -uNr a/.github/workflows/test.yml b/.github/workflows/test.yml +--- a/.github/workflows/test.yml 2024-06-01 20:40:38.000000000 +0200 ++++ b/.github/workflows/test.yml 2024-08-13 09:56:13.152870522 +0200 +@@ -37,7 +37,7 @@ + runs-on: ubuntu-20.04 + strategy: + matrix: +- python-version: ["2.7", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] ++ python-version: ["2.7", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] + test-suite: [python, deadlocks] + steps: + - name: Add deadnakes ppa +diff -uNr a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c +--- a/plugins/python/python_plugin.c 2024-08-13 09:55:30.374870522 +0200 ++++ b/plugins/python/python_plugin.c 2024-08-13 10:00:36.315870522 +0200 +@@ -406,7 +406,7 @@ + // reset python signal flags so child processes can trap signals + // Necessary if uwsgi fork hooks not called to update interpreter state + if (!up.call_uwsgi_fork_hooks && up.call_osafterfork) { +-#ifdef HAS_NOT_PyOS_AfterFork_Child ++#ifdef HAS_NOT_PYOS_FORK_STABLE_API + PyOS_AfterFork(); + #else + PyOS_AfterFork_Child(); +@@ -1340,11 +1340,10 @@ + // Acquire the gil and import lock before forking in order to avoid + // deadlocks in workers + UWSGI_GET_GIL +-#if defined UWSGI_PY312 +- PyInterpreterState *interp = PyInterpreterState_Get(); +- _PyImport_AcquireLock(interp); +-#else ++#ifdef HAS_NOT_PYOS_FORK_STABLE_API + _PyImport_AcquireLock(); ++#else ++ PyOS_BeforeFork(); + #endif + } + } +@@ -1357,17 +1356,16 @@ + if (uwsgi.has_threads) { + if (step == 0) { + // Release locks within master process +-#if defined UWSGI_PY312 +- PyInterpreterState *interp = PyInterpreterState_Get(); +- _PyImport_ReleaseLock(interp); +-#else ++#ifdef HAS_NOT_PYOS_FORK_STABLE_API + _PyImport_ReleaseLock(); ++#else ++ PyOS_AfterFork_Parent(); + #endif + UWSGI_RELEASE_GIL + } + else { + // Ensure thread state and locks are cleaned up in child process +-#ifdef HAS_NOT_PyOS_AfterFork_Child ++#ifdef HAS_NOT_PYOS_FORK_STABLE_API + PyOS_AfterFork(); + #else + PyOS_AfterFork_Child(); +@@ -1618,7 +1616,11 @@ + PyGILState_Release(pgst); + + if (wsgi_req) { +-#ifdef UWSGI_PY312 ++#ifdef UWSGI_PY313 ++ up.current_c_recursion_remaining[wsgi_req->async_id] = tstate->c_recursion_remaining; ++ up.current_py_recursion_remaining[wsgi_req->async_id] = tstate->py_recursion_remaining; ++ up.current_frame[wsgi_req->async_id] = tstate->current_frame; ++#elif defined UWSGI_PY312 + up.current_c_recursion_remaining[wsgi_req->async_id] = tstate->c_recursion_remaining; + up.current_py_recursion_remaining[wsgi_req->async_id] = tstate->py_recursion_remaining; + up.current_frame[wsgi_req->async_id] = tstate->cframe; +@@ -1631,7 +1633,11 @@ + #endif + } + else { +-#ifdef UWSGI_PY312 ++#ifdef UWSGI_PY313 ++ up.current_main_c_recursion_remaining = tstate->c_recursion_remaining; ++ up.current_main_py_recursion_remaining = tstate->py_recursion_remaining; ++ up.current_main_frame = tstate->current_frame; ++#elif defined UWSGI_PY312 + up.current_main_c_recursion_remaining = tstate->c_recursion_remaining; + up.current_main_py_recursion_remaining = tstate->py_recursion_remaining; + up.current_main_frame = tstate->cframe; +@@ -1871,7 +1877,11 @@ + PyGILState_Release(pgst); + + if (wsgi_req) { +-#ifdef UWSGI_PY312 ++#ifdef UWSGI_PY313 ++ tstate->c_recursion_remaining = up.current_c_recursion_remaining[wsgi_req->async_id]; ++ tstate->py_recursion_remaining = up.current_py_recursion_remaining[wsgi_req->async_id]; ++ tstate->current_frame = up.current_frame[wsgi_req->async_id]; ++#elif defined UWSGI_PY312 + tstate->c_recursion_remaining = up.current_c_recursion_remaining[wsgi_req->async_id]; + tstate->py_recursion_remaining = up.current_py_recursion_remaining[wsgi_req->async_id]; + tstate->cframe = up.current_frame[wsgi_req->async_id]; +@@ -1884,7 +1894,11 @@ + #endif + } + else { +-#ifdef UWSGI_PY312 ++#ifdef UWSGI_PY313 ++ tstate->c_recursion_remaining = up.current_main_c_recursion_remaining; ++ tstate->py_recursion_remaining = up.current_main_py_recursion_remaining; ++ tstate->current_frame = up.current_main_frame; ++#elif defined UWSGI_PY312 + tstate->c_recursion_remaining = up.current_main_c_recursion_remaining; + tstate->py_recursion_remaining = up.current_main_py_recursion_remaining; + tstate->cframe = up.current_main_frame; +@@ -2098,7 +2112,7 @@ + // ensure signals can be used again from python + // Necessary if fork hooks have been not used to update interpreter state + if (!up.call_osafterfork && !up.call_uwsgi_fork_hooks) +-#ifdef HAS_NOT_PyOS_AfterFork_Child ++#ifdef HAS_NOT_PYOS_FORK_STABLE_API + PyOS_AfterFork(); + #else + PyOS_AfterFork_Child(); +diff -uNr a/plugins/python/uwsgi_python.h b/plugins/python/uwsgi_python.h +--- a/plugins/python/uwsgi_python.h 2024-06-01 20:40:38.000000000 +0200 ++++ b/plugins/python/uwsgi_python.h 2024-08-13 10:04:58.492870522 +0200 +@@ -25,6 +25,10 @@ + # define UWSGI_PY312 + #endif + ++#if (PY_VERSION_HEX >= 0x030d0000) ++# define UWSGI_PY313 ++#endif ++ + #if PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 7 + #define HAS_NOT_PyMemoryView_FromBuffer + #endif +@@ -41,12 +45,8 @@ + #define HAS_NO_ERRORS_IN_PyFile_FromFd + #endif + +-#if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 7 +-#define HAS_NOT_PyOS_AfterFork_Child +-#endif +- +-#if PY_MAJOR_VERSION < 3 +-#define HAS_NOT_PyOS_AfterFork_Child ++#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 7) || PY_MAJOR_VERSION < 3 ++#define HAS_NOT_PYOS_FORK_STABLE_API + #endif + + #if PY_MAJOR_VERSION > 2 +@@ -172,7 +172,15 @@ + + char *callable; + +-#ifdef UWSGI_PY312 ++#ifdef UWSGI_PY313 ++ int *current_c_recursion_remaining; ++ int *current_py_recursion_remaining; ++ struct _PyInterpreterFrame **current_frame; ++ ++ int current_main_c_recursion_remaining; ++ int current_main_py_recursion_remaining; ++ struct _PyInterpreterFrame *current_main_frame; ++#elif defined UWSGI_PY312 + int *current_c_recursion_remaining; + int *current_py_recursion_remaining; + _PyCFrame **current_frame; From 591a578dd8ea7d2fd179c87c5362743910133ef1 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 4 Sep 2024 21:44:07 +0200 Subject: [PATCH 399/427] Cleanup work, EL10 support - Drop support for EL7 - Add support for EL10 - Explicitly require pcre2 (all builds already pulled this in anyway) --- uwsgi.spec | 114 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 66 insertions(+), 48 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index a66c3df..732590c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -57,48 +57,6 @@ #Fedora endif %endif -# Conditionally enable/disable some things in epel7 -%if 0%{?rhel} == 7 -# el7 does have java -%bcond_without java -%bcond_without python2 -%bcond_without python3 -%bcond_without python3_alternate1 -%if %{with python3_alternate1} -%global python3_alternate1_pkgname python34 -%global __python3_alternate1 python3.4 -%global python3_alternate1_version 3.4 -%global python3_alternate1_version_nodots 34 -%global python3_alternate1_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate1} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} -%endif -%bcond_without python3_greenlet -%bcond_without gloox -%bcond_without geoip -# This only exists on EL7 -%bcond_without tcp_wrappers -# el7 doesn't have zeromq -%bcond_with zeromq -# el7 does have python-greenlet, but only on x86_64 -%ifarch x86_64 -%bcond_without python2_greenlet -%endif -%bcond_without perl -# el7 does have perl-Coro -%bcond_without perlcoro -# el7 httpd does not include mod_proxy_uwsgi -%bcond_without mod_proxy_uwsgi -# el7 can now build glusterfs but only on x86_64 -%ifnarch x86_64 -%bcond_with glusterfs -%else -%bcond_without glusterfs -%endif -# this fails in el7 not sure why -%bcond_with gridfs -# EL7 PHP is too old -%bcond_with php -%endif - # epel8 builds pretty similar to Fedora for now %if 0%{?rhel} == 8 %bcond_without go @@ -182,10 +140,7 @@ %bcond_without gridfs %endif -# EL9 has multiple python3 versions, but does not provide the -# convenience macros that EL7 has. Set those ourselves. -# -# This needs some serious rework after EL7 is gone. +# EL9 has multiple python3 versions %bcond_without python3_alternate1 %if %{with python3_alternate1} %global python3_alternate1_pkgname python3.11 @@ -205,6 +160,63 @@ #EL9 endif %endif +%if 0%{?rhel} == 10 +# EPEL10 does not have gcc-go +%bcond_with go +%bcond_without python3 +# EPEL10 does not have python-greenlet-devel any more +%bcond_with python3_greenlet +%bcond_without ruby19 +%bcond_without tuntap +# EPEL10 doesn't have zeromq yet +%bcond_with zeromq +%bcond_without perl +# EPEL10 doesn't have perl-Coro yet +%bcond_with perlcoro +# EPEL10 doesn't have glusterfs yet +%bcond_with glusterfs +%bcond_without php +%bcond_without pq +# EPEL10 doesn't have gloox yet +%bcond_with gloox +# EPEL10 doesn't have GeoIP yet +%bcond_with geoip +# javapackages-tools retired (apache-ivy orphanage) +%bcond_with java +# Fedora httpd includes mod_proxy_uwsgi +# https://bugzilla.redhat.com/show_bug.cgi?id=1574335 +%bcond_with mod_proxy_uwsgi +#mono +# EPEL10 doesn't have mono yet +%ifarch %{mono_arches} +%bcond_with mono +%else +%bcond_with mono +%endif +# mongodblibs +# mongo-cxx-driver-legacy broken in rawhide rhbz#1675407 +%bcond_with mongodblibs +# v8-314 retired +%bcond_with v8 +#mongodblibs dependency +%if %{without mongodblibs} +%bcond_with gridfs +%else +%bcond_without gridfs +%endif + +# EL10 has multiple python3 versions +%bcond_without python3_alternate1 +%if %{with python3_alternate1} +%global python3_alternate1_pkgname python3.12 +%global __python3_alternate1 python3.12 +%global python3_alternate1_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate1} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate1_version 3.12 +%global python3_alternate1_version_nodots 312 +%endif +#EL9 endif +%endif + %global manual_py_compile 1 # Turn off byte compilation so it doesn't try @@ -234,7 +246,7 @@ Name: uwsgi Version: 2.0.26 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -292,7 +304,7 @@ BuildRequires: %{python3_alternate2_pkgname}-devel %if %{with glusterfs} BuildRequires: glusterfs-devel, glusterfs-api-devel %endif -BuildRequires: lua-devel, ruby, pcre-devel +BuildRequires: lua-devel, ruby, pcre2-devel %if %{with php} BuildRequires: php-devel, php-embedded %endif @@ -1937,6 +1949,12 @@ exit 0 %changelog +* Wed Sep 04 2024 Ralf Ertzinger - 2.0.26-6 +- Drop support for EL7 +- Add support for EL10 +- Explicitly require pcre2 (all builds already pulled this + in anyway) + * Tue Aug 13 2024 Ralf Ertzinger - 2.0.26-5 - Add patch for python 3.13 From ee7dd133ddec5de5276507d59f25479a9d568e59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Wed, 4 Sep 2024 22:36:26 +0200 Subject: [PATCH 400/427] convert license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- uwsgi.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 732590c..aa18ece 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -246,11 +246,12 @@ Name: uwsgi Version: 2.0.26 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT -License: GPLv2 with exceptions and MIT +# Automatically converted from old format: GPLv2 with exceptions and MIT - review is highly recommended. +License: LicenseRef-Callaway-GPLv2-with-exceptions AND LicenseRef-Callaway-MIT URL: https://github.com/unbit/uwsgi ExcludeArch: %{ix86} @@ -1949,6 +1950,9 @@ exit 0 %changelog +* Wed Sep 04 2024 Miroslav Suchý - 2.0.26-7 +- convert license to SPDX + * Wed Sep 04 2024 Ralf Ertzinger - 2.0.26-6 - Drop support for EL7 - Add support for EL10 From 08576b2d2589d1cf291c41f8c9dc7583031344e5 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sun, 22 Sep 2024 21:15:53 +0200 Subject: [PATCH 401/427] Disable building the Ruby rack plugin for EPEL10 --- fedora.ini | 1 - uwsgi.spec | 17 ++++++++++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/fedora.ini b/fedora.ini index 951846b..7c3cda6 100644 --- a/fedora.ini +++ b/fedora.ini @@ -35,7 +35,6 @@ plugins = airbrake, notfound, pam, pty, - rack, rawrouter, redislog, router_basicauth, diff --git a/uwsgi.spec b/uwsgi.spec index aa18ece..968fa2a 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -32,6 +32,7 @@ %bcond_without pq %bcond_without gloox %bcond_without geoip +%bcond_without ruby_rack # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -72,6 +73,7 @@ %bcond_without pq %bcond_without gloox %bcond_without geoip +%bcond_without ruby_rack # javapackages-tools retired (apache-ivy orphanage) %bcond_with java # Fedora httpd includes mod_proxy_uwsgi @@ -113,6 +115,7 @@ %bcond_with glusterfs %bcond_without php %bcond_without pq +%bcond_without ruby_rack # EPEL9 doesn't have gloox yet %bcond_with gloox # EPEL9 doesn't have GeoIP yet @@ -177,6 +180,8 @@ %bcond_with glusterfs %bcond_without php %bcond_without pq +# EPEL10 doesn't have rubygem-rack yet +%bcond_with ruby_rack # EPEL10 doesn't have gloox yet %bcond_with gloox # EPEL10 doesn't have GeoIP yet @@ -246,7 +251,7 @@ Name: uwsgi Version: 2.0.26 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -972,12 +977,14 @@ Requires: %{python3_alternate2_pkgname}, uwsgi-plugin-common = %{version}-%{rele This package contains the Python %{python3_alternate2_version} plugin for uWSGI %endif +%if %{with ruby_rack} %package -n uwsgi-plugin-rack Summary: uWSGI - Ruby rack plugin Requires: rubygem-rack, uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-rack This package contains the rack plugin for uWSGI +%endif %package -n uwsgi-plugin-rbthreads Summary: uWSGI - Ruby native threads support plugin @@ -1419,6 +1426,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v %if %{with geoip} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/geoip fedora %endif +%if %{with ruby_rack} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/rack fedora +%endif %if %{with tcp_wrappers} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/router_access fedora %endif @@ -1795,8 +1805,10 @@ exit 0 %{_libdir}/uwsgi/python%{python3_alternate2_version_nodots}_plugin.so %endif +%if %{with ruby_rack} %files -n uwsgi-plugin-rack %{_libdir}/uwsgi/rack_plugin.so +%endif %if %{with ruby19} %files -n uwsgi-plugin-rbthreads @@ -1950,6 +1962,9 @@ exit 0 %changelog +* Sun Sep 22 2024 Ralf Ertzinger - 2.0.26-8 +- Disable building the Ruby rack plugin for EPEL10 + * Wed Sep 04 2024 Miroslav Suchý - 2.0.26-7 - convert license to SPDX From 670041ecc344f0c3cd91501ebd0e7597b1a4769a Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 25 Sep 2024 18:42:22 +0200 Subject: [PATCH 402/427] pdate to 2.0.27 Drop merged patches Re-enable rack plugin for EPEL10, dependencies now present --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 17 +++++++++-------- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index e60ce59..793b016 100644 --- a/.gitignore +++ b/.gitignore @@ -60,3 +60,5 @@ /uwsgi-docs-8dcaacd.tar.gz /2.0.26.tar.gz /uwsgi-docs-59e6cd1.tar.gz +/2.0.27.tar.gz +/uwsgi-docs-c0f17cd.tar.gz diff --git a/sources b/sources index 825b046..6892f4e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (2.0.26.tar.gz) = 3bb1c7855a5a83eaff18e69f22618794ede2f6df7c8eee42d34163d3319014272223e2c48d013601cd18a17916c5b91b9a0eb4816608442d389c6ae38c83371c -SHA512 (uwsgi-docs-59e6cd1.tar.gz) = db243bcf23417ec4eb87c93f7ec3bc8ef03c122bf61b63ae56f8c2cfc86bda0569023bdd6ecaf130027379792e778ffc3e8621f1493bd6f7499c46ffe8393f43 +SHA512 (2.0.27.tar.gz) = 78de6b8aa401ca5e27204cc68dec540617407dc9a0dad2c785a7eadc449889aad4eb516d4d8d257dc46e5b91b6c2d85be5953b19e0897375a7f0fecaa298d066 +SHA512 (uwsgi-docs-c0f17cd.tar.gz) = ae5483f0d0bbbe417e11ed83bf0f9f89a0bd742f201f4bc243c1a084274f8abb2f26d7176150a8a875a6408a328ac935357af40e1e2efb815d8fb51da12b9566 diff --git a/uwsgi.spec b/uwsgi.spec index 968fa2a..a5ab8f0 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 59e6cd1044e20eaae73e5cd8114b77fb38c99ac5 +%global commit c0f17cd25b0f2fd60312e9d7194cf7cdfd39303a %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -180,8 +180,7 @@ %bcond_with glusterfs %bcond_without php %bcond_without pq -# EPEL10 doesn't have rubygem-rack yet -%bcond_with ruby_rack +%bcond_without ruby_rack # EPEL10 doesn't have gloox yet %bcond_with gloox # EPEL10 doesn't have GeoIP yet @@ -250,8 +249,8 @@ %endif Name: uwsgi -Version: 2.0.26 -Release: 8%{?dist} +Version: 2.0.27 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -281,8 +280,6 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch -# https://github.com/unbit/uwsgi/pull/2655 -Patch15: uwsgi_python313.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1340,7 +1337,6 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 -%patch -P15 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1962,6 +1958,11 @@ exit 0 %changelog +* Tue Sep 24 2024 Ralf Ertzinger - 2.0.27-1 +- Update to 2.0.27 +- Drop merged patches +- Re-enable rack plugin for EPEL10, dependencies now present + * Sun Sep 22 2024 Ralf Ertzinger - 2.0.26-8 - Disable building the Ruby rack plugin for EPEL10 From f03b56ba3a5df36bc74e113f7492f033158f6ecd Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sun, 29 Sep 2024 19:27:25 +0200 Subject: [PATCH 403/427] Only build fiber plugin when rack plugin is also built --- uwsgi.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index a5ab8f0..2a65ba3 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.27 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -743,12 +743,14 @@ Requires: uwsgi-plugin-common = %{version}-%{release} %description -n uwsgi-plugin-dummy This package contains the dummy plugin for uWSGI +%if %{with ruby_rack} %package -n uwsgi-plugin-fiber Summary: uWSGI - Plugin for Ruby Fiber support Requires: uwsgi-plugin-common = %{version}-%{release}, uwsgi-plugin-rack = %{version}-%{release} %description -n uwsgi-plugin-fiber This package contains the fiber plugin for uWSGI +%endif %if %{with go} %package -n uwsgi-plugin-gccgo @@ -1382,7 +1384,9 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --v %endif %endif %if %{with ruby19} +%if %{with ruby_rack} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/fiber fedora +%endif CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/rbthreads fedora %endif %if %{with tuntap} @@ -1683,9 +1687,11 @@ exit 0 %{_libdir}/uwsgi/dummy_plugin.so %if %{with ruby19} +%if %{with ruby_rack} %files -n uwsgi-plugin-fiber %{_libdir}/uwsgi/fiber_plugin.so %endif +%endif %if %{with go} %files -n uwsgi-plugin-gccgo @@ -1958,6 +1964,9 @@ exit 0 %changelog +* Fri Sep 27 2024 Ralf Ertzinger - 2.0.27-2 +- Only build fiber plugin when rack plugin is also built + * Tue Sep 24 2024 Ralf Ertzinger - 2.0.27-1 - Update to 2.0.27 - Drop merged patches From d3a2179c1da93bead669dc0c84b24c33f19be4e0 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Mon, 14 Oct 2024 10:42:39 +0200 Subject: [PATCH 404/427] rebuild for https://fedoraproject.org/wiki/Changes/php84 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 2a65ba3..381b8fc 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.27 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1964,6 +1964,9 @@ exit 0 %changelog +* Mon Oct 14 2024 Remi Collet - 2.0.27-3 +- rebuild for https://fedoraproject.org/wiki/Changes/php84 + * Fri Sep 27 2024 Ralf Ertzinger - 2.0.27-2 - Only build fiber plugin when rack plugin is also built From e40dac04962e9b9c814f64f143dcde07ff47ce50 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Mon, 14 Oct 2024 20:12:42 +0200 Subject: [PATCH 405/427] Fix uWSGI auto-reloading on config change --- uwsgi-2.0.27-graceful-reload.patch | 41 ++++++++++++++++++++++++++++++ uwsgi.spec | 8 +++++- 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 uwsgi-2.0.27-graceful-reload.patch diff --git a/uwsgi-2.0.27-graceful-reload.patch b/uwsgi-2.0.27-graceful-reload.patch new file mode 100644 index 0000000..dcec832 --- /dev/null +++ b/uwsgi-2.0.27-graceful-reload.patch @@ -0,0 +1,41 @@ +diff -uNr a/core/master_utils.c b/core/master_utils.c +--- a/core/master_utils.c 2024-09-23 22:05:33.000000000 +0200 ++++ b/core/master_utils.c 2024-10-14 19:57:00.233290804 +0200 +@@ -54,12 +54,6 @@ + + uwsgi_detach_daemons(); + +- for (i = 1; i <= uwsgi.numproc; i++) { +- if (uwsgi.workers[i].pid > 0) { +- waitpid(uwsgi.workers[i].pid, &waitpid_status, 0); +- } +- } +- + for (i = 0; i < ushared->gateways_cnt; i++) { + if (ushared->gateways[i].pid > 0) { + kill(ushared->gateways[i].pid, SIGKILL); +diff -uNr a/core/uwsgi.c b/core/uwsgi.c +--- a/core/uwsgi.c 2024-09-23 22:05:33.000000000 +0200 ++++ b/core/uwsgi.c 2024-10-14 19:57:00.134291181 +0200 +@@ -1319,6 +1319,8 @@ + // gracefully destroy + void gracefully_kill_them_all(int signum) { + ++ int waitpid_status; ++ + if (uwsgi_instance_is_dying) return; + uwsgi.status.gracefully_destroying = 1; + +@@ -1341,6 +1343,12 @@ + } + } + ++ ++ for (i = 1; i <= uwsgi.numproc; i++) { ++ if (uwsgi.workers[i].pid > 0) { ++ waitpid(uwsgi.workers[i].pid, &waitpid_status, 0); ++ } ++ } + uwsgi_destroy_processes(); + } + diff --git a/uwsgi.spec b/uwsgi.spec index 381b8fc..9add041 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.27 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -280,6 +280,8 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch +# https://github.com/unbit/uwsgi/issues/2681 +Patch15: uwsgi-2.0.27-graceful-reload.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1339,6 +1341,7 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 +%patch -P15 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1964,6 +1967,9 @@ exit 0 %changelog +* Mon Oct 14 2024 Ralf Ertzinger - 2.0.27-4 +- Fix uWSGI auto-reloading on config change + * Mon Oct 14 2024 Remi Collet - 2.0.27-3 - rebuild for https://fedoraproject.org/wiki/Changes/php84 From 64c090a890bfbc09c9c1825f1e141c84a409c68e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 22 Oct 2024 13:40:31 +0100 Subject: [PATCH 406/427] Rebuild for Jansson 2.14 (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 9add041..78f54df 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.27 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1967,6 +1967,10 @@ exit 0 %changelog +* Tue Oct 22 2024 Richard W.M. Jones - 2.0.27-5 +- Rebuild for Jansson 2.14 + (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) + * Mon Oct 14 2024 Ralf Ertzinger - 2.0.27-4 - Fix uWSGI auto-reloading on config change From b7b8802b0f317fe41c69877f54d0ddb282f77626 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 2 Nov 2024 21:24:40 +0100 Subject: [PATCH 407/427] Update to 2.0.28, drop merged patches --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 12 ++++++------ 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 793b016..159e647 100644 --- a/.gitignore +++ b/.gitignore @@ -62,3 +62,5 @@ /uwsgi-docs-59e6cd1.tar.gz /2.0.27.tar.gz /uwsgi-docs-c0f17cd.tar.gz +/2.0.28.tar.gz +/uwsgi-docs-9606cb0.tar.gz diff --git a/sources b/sources index 6892f4e..b5af45c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (2.0.27.tar.gz) = 78de6b8aa401ca5e27204cc68dec540617407dc9a0dad2c785a7eadc449889aad4eb516d4d8d257dc46e5b91b6c2d85be5953b19e0897375a7f0fecaa298d066 -SHA512 (uwsgi-docs-c0f17cd.tar.gz) = ae5483f0d0bbbe417e11ed83bf0f9f89a0bd742f201f4bc243c1a084274f8abb2f26d7176150a8a875a6408a328ac935357af40e1e2efb815d8fb51da12b9566 +SHA512 (2.0.28.tar.gz) = e5e8a4a21c590a2bc4023879fbf4c29ec4ed7a7dc201e76ff738a3bb5730bd3844ae39d2bf4fcd20be3935c54c5dcea9a785ede1ecf02225646342cbe70c4c72 +SHA512 (uwsgi-docs-9606cb0.tar.gz) = be8dccf6839e5162e1ab1ab0d84c7ba2cc7a36fa752be8667ebf10bd796ebd217900328b87946bc2ec107b45aff0080b24961c2ba8aced30a33853029c1ac923 diff --git a/uwsgi.spec b/uwsgi.spec index 78f54df..bef664e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit c0f17cd25b0f2fd60312e9d7194cf7cdfd39303a +%global commit 9606cb0ee032e77113a043b21fcc386738de301b %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -249,8 +249,8 @@ %endif Name: uwsgi -Version: 2.0.27 -Release: 5%{?dist} +Version: 2.0.28 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -280,8 +280,6 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch -# https://github.com/unbit/uwsgi/issues/2681 -Patch15: uwsgi-2.0.27-graceful-reload.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1341,7 +1339,6 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 -%patch -P15 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1967,6 +1964,9 @@ exit 0 %changelog +* Sun Oct 27 2024 Ralf Ertzinger - 2.0.28-1 +- Update to 2.0.28, drop merged patches + * Tue Oct 22 2024 Richard W.M. Jones - 2.0.27-5 - Rebuild for Jansson 2.14 (https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/3PYINSQGKQ4BB25NQUI2A2UCGGLAG5ND/) From 6fe6c653dd390b11b1476b705d88036110be03bb Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 8 Jan 2025 10:41:52 +0900 Subject: [PATCH 408/427] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index bef664e..79153f0 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.28 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1964,6 +1964,9 @@ exit 0 %changelog +* Wed Jan 08 2025 Mamoru TASAKA - 2.0.28-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 + * Sun Oct 27 2024 Ralf Ertzinger - 2.0.28-1 - Update to 2.0.28, drop merged patches From 19e19698a5fea1a95781f5370e617359fda97de2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 14:01:56 +0000 Subject: [PATCH 409/427] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 79153f0..cdf2d9f 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.28 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1964,6 +1964,9 @@ exit 0 %changelog +* Sun Jan 19 2025 Fedora Release Engineering - 2.0.28-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Jan 08 2025 Mamoru TASAKA - 2.0.28-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 From 6e2e54ccb9a7d1a536de205f08fb4bc46375b130 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Fri, 24 Jan 2025 21:14:49 +0100 Subject: [PATCH 410/427] Fix type errors flagged by GCC15 --- uwsgi.spec | 7 +- uwsgi_gcc15-signal-handler.patch | 341 +++++++++++++++++++++++++++++++ 2 files changed, 347 insertions(+), 1 deletion(-) create mode 100644 uwsgi_gcc15-signal-handler.patch diff --git a/uwsgi.spec b/uwsgi.spec index cdf2d9f..f1cdceb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.28 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -280,6 +280,7 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch +Patch15: uwsgi_gcc15-signal-handler.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1339,6 +1340,7 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 +%patch -P15 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -1964,6 +1966,9 @@ exit 0 %changelog +* Fri Jan 24 2025 Ralf Ertzinger - 2.0.28-4 +- Fix type errors flagged by GCC15 + * Sun Jan 19 2025 Fedora Release Engineering - 2.0.28-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/uwsgi_gcc15-signal-handler.patch b/uwsgi_gcc15-signal-handler.patch new file mode 100644 index 0000000..b63250a --- /dev/null +++ b/uwsgi_gcc15-signal-handler.patch @@ -0,0 +1,341 @@ +diff -uNr a/core/emperor.c b/core/emperor.c +--- a/core/emperor.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/emperor.c 2025-01-24 19:16:51.668840358 +0100 +@@ -598,7 +598,7 @@ + } + + +-static void emperor_stats() { ++static void emperor_stats(int sn) { + + struct uwsgi_instance *c_ui = ui->ui_next; + +diff -uNr a/core/fifo.c b/core/fifo.c +--- a/core/fifo.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/fifo.c 2025-01-24 19:52:16.760905071 +0100 +@@ -26,18 +26,18 @@ + + #define announce_fifo uwsgi_log_verbose("active master fifo is now %s\n", uwsgi_fifo_by_slot()) + +-static void uwsgi_fifo_set_slot_zero() { uwsgi.master_fifo_slot = 0; announce_fifo; } +-static void uwsgi_fifo_set_slot_one() { uwsgi.master_fifo_slot = 1; announce_fifo; } +-static void uwsgi_fifo_set_slot_two() { uwsgi.master_fifo_slot = 2; announce_fifo; } +-static void uwsgi_fifo_set_slot_three() { uwsgi.master_fifo_slot = 3; announce_fifo; } +-static void uwsgi_fifo_set_slot_four() { uwsgi.master_fifo_slot = 4; announce_fifo; } +-static void uwsgi_fifo_set_slot_five() { uwsgi.master_fifo_slot = 5; announce_fifo; } +-static void uwsgi_fifo_set_slot_six() { uwsgi.master_fifo_slot = 6; announce_fifo; } +-static void uwsgi_fifo_set_slot_seven() { uwsgi.master_fifo_slot = 7; announce_fifo; } +-static void uwsgi_fifo_set_slot_eight() { uwsgi.master_fifo_slot = 8; announce_fifo; } +-static void uwsgi_fifo_set_slot_nine() { uwsgi.master_fifo_slot = 9; announce_fifo; } ++static void uwsgi_fifo_set_slot_zero(int _) { uwsgi.master_fifo_slot = 0; announce_fifo; } ++static void uwsgi_fifo_set_slot_one(int _) { uwsgi.master_fifo_slot = 1; announce_fifo; } ++static void uwsgi_fifo_set_slot_two(int _) { uwsgi.master_fifo_slot = 2; announce_fifo; } ++static void uwsgi_fifo_set_slot_three(int _) { uwsgi.master_fifo_slot = 3; announce_fifo; } ++static void uwsgi_fifo_set_slot_four(int _) { uwsgi.master_fifo_slot = 4; announce_fifo; } ++static void uwsgi_fifo_set_slot_five(int _) { uwsgi.master_fifo_slot = 5; announce_fifo; } ++static void uwsgi_fifo_set_slot_six(int _) { uwsgi.master_fifo_slot = 6; announce_fifo; } ++static void uwsgi_fifo_set_slot_seven(int _) { uwsgi.master_fifo_slot = 7; announce_fifo; } ++static void uwsgi_fifo_set_slot_eight(int _) { uwsgi.master_fifo_slot = 8; announce_fifo; } ++static void uwsgi_fifo_set_slot_nine(int _) { uwsgi.master_fifo_slot = 9; announce_fifo; } + +-static void subscriptions_blocker() { ++static void subscriptions_blocker(int _) { + if (uwsgi.subscriptions_blocked) { + uwsgi_log_verbose("subscriptions re-enabled\n"); + uwsgi.subscriptions_blocked = 0; +@@ -48,7 +48,7 @@ + } + } + +-static void emperor_rescan() { ++static void emperor_rescan(int _) { + if (uwsgi.emperor_pid > 0) { + if (kill(uwsgi.emperor_pid, SIGWINCH)) { + uwsgi_error("emperor_rescan()/kill()"); +diff -uNr a/core/logging.c b/core/logging.c +--- a/core/logging.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/logging.c 2025-01-24 19:38:12.555044665 +0100 +@@ -509,10 +509,10 @@ + } + + if (need_rotation) { +- uwsgi_log_rotate(); ++ uwsgi_log_rotate(0); + } + else if (need_reopen) { +- uwsgi_log_reopen(); ++ uwsgi_log_reopen(0); + } + } + +@@ -552,13 +552,13 @@ + free(rot_name); + } + +-void uwsgi_log_rotate() { ++void uwsgi_log_rotate(int _) { + if (!uwsgi.logfile) + return; + uwsgi_log_do_rotate(uwsgi.logfile, uwsgi.log_backupname, uwsgi.shared->logsize, uwsgi.original_log_fd); + } + +-void uwsgi_log_reopen() { ++void uwsgi_log_reopen(int _) { + char message[1024]; + if (!uwsgi.logfile) return; + int ret = snprintf(message, 1024, "[%d] logsize: %llu, triggering log-reopen...\n", (int) uwsgi_now(), (unsigned long long) uwsgi.shared->logsize); +diff -uNr a/core/master.c b/core/master.c +--- a/core/master.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/master.c 2025-01-24 19:44:56.074389538 +0100 +@@ -26,7 +26,7 @@ + if (uwsgi.vassal_sos) { + if (uwsgi.current_time - last_sos > uwsgi.vassal_sos) { + uwsgi_log_verbose("asking Emperor for reinforcements (overload: %llu)...\n", (unsigned long long) ushared->overloaded); +- vassal_sos(); ++ vassal_sos(0); + last_sos = uwsgi.current_time; + } + } +@@ -294,12 +294,12 @@ + if (uwsgi.shared->backlog >= (uint64_t) uwsgi.vassal_sos_backlog) { + // ask emperor for help + uwsgi_log_verbose("asking Emperor for reinforcements (backlog: %llu)...\n", (unsigned long long) uwsgi.shared->backlog); +- vassal_sos(); ++ vassal_sos(0); + } + } + } + +-void vassal_sos() { ++void vassal_sos(int _) { + if (!uwsgi.has_emperor) { + uwsgi_log("[broodlord] instance not governed by an Emperor !!!\n"); + return; +@@ -835,19 +835,19 @@ + touched = uwsgi_check_touches(uwsgi.touch_workers_reload); + if (touched) { + uwsgi_log_verbose("*** %s has been touched... workers reload !!! ***\n", touched); +- uwsgi_reload_workers(); ++ uwsgi_reload_workers(0); + continue; + } + touched = uwsgi_check_touches(uwsgi.touch_mules_reload); + if (touched) { + uwsgi_log_verbose("*** %s has been touched... mules reload !!! ***\n", touched); +- uwsgi_reload_mules(); ++ uwsgi_reload_mules(0); + continue; + } + touched = uwsgi_check_touches(uwsgi.touch_spoolers_reload); + if (touched) { + uwsgi_log_verbose("*** %s has been touched... spoolers reload !!! ***\n", touched); +- uwsgi_reload_spoolers(); ++ uwsgi_reload_spoolers(0); + continue; + } + touched = uwsgi_check_touches(uwsgi.touch_chain_reload); +@@ -1090,7 +1090,7 @@ + // never here + } + +-void uwsgi_reload_workers() { ++void uwsgi_reload_workers(int _) { + int i; + uwsgi_block_signal(SIGHUP); + for (i = 1; i <= uwsgi.numproc; i++) { +@@ -1101,7 +1101,7 @@ + uwsgi_unblock_signal(SIGHUP); + } + +-void uwsgi_reload_mules() { ++void uwsgi_reload_mules(int _) { + int i; + + uwsgi_block_signal(SIGHUP); +@@ -1113,7 +1113,7 @@ + uwsgi_unblock_signal(SIGHUP); + } + +-void uwsgi_reload_spoolers() { ++void uwsgi_reload_spoolers(int _) { + struct uwsgi_spooler *us; + + uwsgi_block_signal(SIGHUP); +@@ -1127,7 +1127,7 @@ + uwsgi_unblock_signal(SIGHUP); + } + +-void uwsgi_chain_reload() { ++void uwsgi_chain_reload(int _) { + if (!uwsgi.status.chain_reloading) { + uwsgi_log_verbose("chain reload starting...\n"); + uwsgi.status.chain_reloading = 1; +@@ -1137,7 +1137,7 @@ + } + } + +-void uwsgi_brutally_reload_workers() { ++void uwsgi_brutally_reload_workers(int _) { + int i; + for (i = 1; i <= uwsgi.numproc; i++) { + if (uwsgi.workers[i].pid > 0) { +diff -uNr a/core/master_utils.c b/core/master_utils.c +--- a/core/master_utils.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/master_utils.c 2025-01-24 19:49:28.710316162 +0100 +@@ -2,7 +2,7 @@ + + extern struct uwsgi_server uwsgi; + +-void worker_wakeup() { ++void worker_wakeup(int sn) { + } + + uint64_t uwsgi_worker_exceptions(int wid) { +@@ -1725,7 +1725,7 @@ + add_reload_fds(uwsgi.brutal_reload_on_fd, "brutal"); + } + +-void uwsgi_refork_master() { ++void uwsgi_refork_master(int _) { + pid_t pid = fork(); + if (pid < 0) { + uwsgi_error("uwsgi_refork_master()/fork()"); +@@ -1746,15 +1746,15 @@ + exit(1); + } + +-void uwsgi_cheaper_increase() { ++void uwsgi_cheaper_increase(int _) { + uwsgi.cheaper_fifo_delta++; + } + +-void uwsgi_cheaper_decrease() { ++void uwsgi_cheaper_decrease(int _) { + uwsgi.cheaper_fifo_delta--; + } + +-void uwsgi_go_cheap() { ++void uwsgi_go_cheap(int _) { + int i; + int waitpid_status; + if (uwsgi.status.is_cheap) return; +diff -uNr a/core/spooler.c b/core/spooler.c +--- a/core/spooler.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/spooler.c 2025-01-24 19:56:28.472783607 +0100 +@@ -12,7 +12,7 @@ + static uint64_t wakeup = 0; + + // function to allow waking up the spooler if blocked in event_wait +-void spooler_wakeup() { ++void spooler_wakeup(int sn) { + wakeup++; + } + +diff -uNr a/core/uwsgi.c b/core/uwsgi.c +--- a/core/uwsgi.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/core/uwsgi.c 2025-01-24 19:59:45.448471107 +0100 +@@ -4957,7 +4957,7 @@ + exit(0); + } + +-void uwsgi_update_pidfiles() { ++void uwsgi_update_pidfiles(int _) { + if (uwsgi.pidfile) { + uwsgi_write_pidfile(uwsgi.pidfile); + } +diff -uNr a/plugins/fiber/fiber.c b/plugins/fiber/fiber.c +--- a/plugins/fiber/fiber.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/plugins/fiber/fiber.c 2025-01-24 20:18:47.222902654 +0100 +@@ -15,12 +15,12 @@ + }; + + +-VALUE uwsgi_fiber_request() { ++VALUE uwsgi_fiber_request(VALUE yielded_arg, VALUE callback_arg, int argc, const VALUE *argv, VALUE blockarg) { + async_schedule_to_req_green(); + return Qnil; + } + +-VALUE rb_fiber_schedule_to_req() { ++VALUE rb_fiber_schedule_to_req(VALUE args) { + int id = uwsgi.wsgi_req->async_id; + + if (!uwsgi.wsgi_req->suspended) { +diff -uNr a/plugins/pty/pty.c b/plugins/pty/pty.c +--- a/plugins/pty/pty.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/plugins/pty/pty.c 2025-01-24 20:04:55.952597269 +0100 +@@ -259,7 +259,7 @@ + + } + +-static void uwsgi_pty_winch() { ++static void uwsgi_pty_winch(int _) { + // 2 uwsgi packets + char uwsgi_pkt[8]; + #ifdef TIOCGWINSZ +@@ -309,7 +309,7 @@ + if (upty.uremote) { + signal(SIGWINCH, uwsgi_pty_winch); + // send current terminal size +- uwsgi_pty_winch(); ++ uwsgi_pty_winch(0); + } + + upty.queue = event_queue_init(); +diff -uNr a/plugins/tuntap/tuntap.c b/plugins/tuntap/tuntap.c +--- a/plugins/tuntap/tuntap.c 2024-10-26 11:59:26.000000000 +0200 ++++ b/plugins/tuntap/tuntap.c 2025-01-24 20:33:49.513449322 +0100 +@@ -409,7 +409,7 @@ + } + } + +-static void uwsgi_tuntap_router() { ++static void uwsgi_tuntap_router(int (*_)(void *), char ** __) { + + if (!utt.routers) return; + +diff -uNr a/uwsgi.h b/uwsgi.h +--- a/uwsgi.h 2024-10-26 11:59:26.000000000 +0200 ++++ b/uwsgi.h 2025-01-24 20:44:03.648790992 +0100 +@@ -4787,20 +4787,20 @@ + int uwsgi_master_fifo_manage(int); + + void uwsgi_log_do_rotate(char *, char *, off_t, int); +-void uwsgi_log_rotate(); +-void uwsgi_log_reopen(); +-void uwsgi_reload_workers(); +-void uwsgi_reload_mules(); +-void uwsgi_reload_spoolers(); +-void uwsgi_chain_reload(); +-void uwsgi_refork_master(); +-void uwsgi_update_pidfiles(); ++void uwsgi_log_rotate(int); ++void uwsgi_log_reopen(int); ++void uwsgi_reload_workers(int); ++void uwsgi_reload_mules(int); ++void uwsgi_reload_spoolers(int); ++void uwsgi_chain_reload(int); ++void uwsgi_refork_master(int); ++void uwsgi_update_pidfiles(int); + void gracefully_kill_them_all(int); +-void uwsgi_brutally_reload_workers(); ++void uwsgi_brutally_reload_workers(int); + +-void uwsgi_cheaper_increase(); +-void uwsgi_cheaper_decrease(); +-void uwsgi_go_cheap(); ++void uwsgi_cheaper_increase(int); ++void uwsgi_cheaper_decrease(int); ++void uwsgi_go_cheap(int); + + char **uwsgi_split_quoted(char *, size_t, char *, size_t *); + +@@ -4987,7 +4987,7 @@ + + int uwsgi_notify_socket_manage(int); + int uwsgi_notify_msg(char *, char *, size_t); +-void vassal_sos(); ++void vassal_sos(int); + + int uwsgi_wait_for_fs(char *, int); + int uwsgi_wait_for_mountpoint(char *); From 72801155cd17bd2ef4c49f529ebd40ec9fdd993e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sat, 1 Feb 2025 19:58:05 +0100 Subject: [PATCH 411/427] Add explicit BR: libxcrypt-devel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Björn Esser --- uwsgi.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index f1cdceb..82bf618 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.28 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -284,6 +284,7 @@ Patch15: uwsgi_gcc15-signal-handler.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel +BuildRequires: libxcrypt-devel %if %{with tcp_wrappers} BuildRequires: tcp_wrappers-devel %endif @@ -1966,6 +1967,9 @@ exit 0 %changelog +* Sat Feb 01 2025 Björn Esser - 2.0.28-5 +- Add explicit BR: libxcrypt-devel + * Fri Jan 24 2025 Ralf Ertzinger - 2.0.28-4 - Fix type errors flagged by GCC15 From e82e663aebe013fe8418c8e8af3e2bbe1f957ed1 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Tue, 18 Feb 2025 22:23:30 +0100 Subject: [PATCH 412/427] Add sysusers.d config file to allow rpm to create users/groups automatically --- uwsgi.spec | 16 +++++++--------- uwsgi.sysusers | 1 + 2 files changed, 8 insertions(+), 9 deletions(-) create mode 100644 uwsgi.sysusers diff --git a/uwsgi.spec b/uwsgi.spec index 82bf618..d5ae8ea 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.28 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -267,6 +267,7 @@ Source3: emperor.ini Source4: https://github.com/unbit/%{docrepo}/archive/%{commit}/%{docrepo}-%{shortcommit}.tar.gz Source5: README.Fedora Source7: uwsgi.tmpfiles +Source8: uwsgi.sysusers # When adding patches please add to the end, don't # reuse intermediate numbers @@ -372,7 +373,6 @@ Obsoletes: uwsgi-routers <= 2.0.6 Obsoletes: uwsgi-plugin-erlang <= 1.9.20-1 Obsoletes: uwsgi-plugin-admin <= 2.0.6 -Requires(pre): shadow-utils %{?systemd_requires} %filter_requires_in %{_usrsrc} @@ -1500,13 +1500,7 @@ install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/uwsgi.conf install -D -p -m 0755 apache2/.libs/mod_proxy_uwsgi.so %{buildroot}%{_httpd_moddir}/mod_proxy_uwsgi.so %endif - -%pre -getent group uwsgi >/dev/null || groupadd -r uwsgi -getent passwd uwsgi >/dev/null || \ - useradd -r -g uwsgi -d /run/uwsgi -s /sbin/nologin \ - -c "uWSGI daemon user" uwsgi -exit 0 +install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %post %systemd_post uwsgi.service @@ -1526,6 +1520,7 @@ exit 0 %dir %{_sysconfdir}/uwsgi.d %doc README README.Fedora CHANGELOG %license LICENSE +%{_sysusersdir}/uwsgi.conf %files -n uwsgi-devel %{_includedir}/uwsgi @@ -1967,6 +1962,9 @@ exit 0 %changelog +* Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 2.0.28-6 +- Add sysusers.d config file to allow rpm to create users/groups automatically + * Sat Feb 01 2025 Björn Esser - 2.0.28-5 - Add explicit BR: libxcrypt-devel diff --git a/uwsgi.sysusers b/uwsgi.sysusers new file mode 100644 index 0000000..30b5692 --- /dev/null +++ b/uwsgi.sysusers @@ -0,0 +1 @@ +u uwsgi - 'uWSGI daemon user' /run/uwsgi - From 2cad1e43b7b3a07ee3a55ea199a5f46af53d0066 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Mon, 24 Mar 2025 19:45:33 +0100 Subject: [PATCH 413/427] Rebuild for new libgo --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index d5ae8ea..1f6b02c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.28 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Mon Mar 24 2025 Ralf Ertzinger - 2.0.28-7 +- Rebuild for new libgo + * Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 2.0.28-6 - Add sysusers.d config file to allow rpm to create users/groups automatically From b0edddcb6b83b67aea1f98bd223ac30bed15a0cc Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sat, 12 Apr 2025 12:57:47 +0200 Subject: [PATCH 414/427] Update to 2.0.29 --- .gitignore | 2 + sources | 4 +- uwsgi.spec | 9 +- uwsgi_gcc15-signal-handler.patch | 310 +------------------------------ 4 files changed, 11 insertions(+), 314 deletions(-) diff --git a/.gitignore b/.gitignore index 159e647..0561e1e 100644 --- a/.gitignore +++ b/.gitignore @@ -64,3 +64,5 @@ /uwsgi-docs-c0f17cd.tar.gz /2.0.28.tar.gz /uwsgi-docs-9606cb0.tar.gz +/2.0.29.tar.gz +/uwsgi-docs-b9da5ea.tar.gz diff --git a/sources b/sources index b5af45c..4451a97 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (2.0.28.tar.gz) = e5e8a4a21c590a2bc4023879fbf4c29ec4ed7a7dc201e76ff738a3bb5730bd3844ae39d2bf4fcd20be3935c54c5dcea9a785ede1ecf02225646342cbe70c4c72 -SHA512 (uwsgi-docs-9606cb0.tar.gz) = be8dccf6839e5162e1ab1ab0d84c7ba2cc7a36fa752be8667ebf10bd796ebd217900328b87946bc2ec107b45aff0080b24961c2ba8aced30a33853029c1ac923 +SHA512 (2.0.29.tar.gz) = 6aaaaae9e067814e430dd80e5ac44e806f937c84f0b38a7ac3f399e92a392a426fe41c23c76371203a31625f985a3f5b397a3294b634c1c7a1280981023bdad1 +SHA512 (uwsgi-docs-b9da5ea.tar.gz) = 94756864572994feb0387d7712bc19538f5a8cf6eed57c6171ee12cb8b7a3e268b2d9695c0d4205c4972401fd2a246badfbb118880f3e531c2803dd3431c8420 diff --git a/uwsgi.spec b/uwsgi.spec index 1f6b02c..17ba2cb 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit 9606cb0ee032e77113a043b21fcc386738de301b +%global commit b9da5eadc78985ec6dff7e3a755ca7be42f9f4c2 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -249,8 +249,8 @@ %endif Name: uwsgi -Version: 2.0.28 -Release: 7%{?dist} +Version: 2.0.29 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Sat Apr 12 2025 Ralf Ertzinger - 2.0.29-1 +- Update to 2.0.29 + * Mon Mar 24 2025 Ralf Ertzinger - 2.0.28-7 - Rebuild for new libgo diff --git a/uwsgi_gcc15-signal-handler.patch b/uwsgi_gcc15-signal-handler.patch index b63250a..a36dc99 100644 --- a/uwsgi_gcc15-signal-handler.patch +++ b/uwsgi_gcc15-signal-handler.patch @@ -1,266 +1,3 @@ -diff -uNr a/core/emperor.c b/core/emperor.c ---- a/core/emperor.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/emperor.c 2025-01-24 19:16:51.668840358 +0100 -@@ -598,7 +598,7 @@ - } - - --static void emperor_stats() { -+static void emperor_stats(int sn) { - - struct uwsgi_instance *c_ui = ui->ui_next; - -diff -uNr a/core/fifo.c b/core/fifo.c ---- a/core/fifo.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/fifo.c 2025-01-24 19:52:16.760905071 +0100 -@@ -26,18 +26,18 @@ - - #define announce_fifo uwsgi_log_verbose("active master fifo is now %s\n", uwsgi_fifo_by_slot()) - --static void uwsgi_fifo_set_slot_zero() { uwsgi.master_fifo_slot = 0; announce_fifo; } --static void uwsgi_fifo_set_slot_one() { uwsgi.master_fifo_slot = 1; announce_fifo; } --static void uwsgi_fifo_set_slot_two() { uwsgi.master_fifo_slot = 2; announce_fifo; } --static void uwsgi_fifo_set_slot_three() { uwsgi.master_fifo_slot = 3; announce_fifo; } --static void uwsgi_fifo_set_slot_four() { uwsgi.master_fifo_slot = 4; announce_fifo; } --static void uwsgi_fifo_set_slot_five() { uwsgi.master_fifo_slot = 5; announce_fifo; } --static void uwsgi_fifo_set_slot_six() { uwsgi.master_fifo_slot = 6; announce_fifo; } --static void uwsgi_fifo_set_slot_seven() { uwsgi.master_fifo_slot = 7; announce_fifo; } --static void uwsgi_fifo_set_slot_eight() { uwsgi.master_fifo_slot = 8; announce_fifo; } --static void uwsgi_fifo_set_slot_nine() { uwsgi.master_fifo_slot = 9; announce_fifo; } -+static void uwsgi_fifo_set_slot_zero(int _) { uwsgi.master_fifo_slot = 0; announce_fifo; } -+static void uwsgi_fifo_set_slot_one(int _) { uwsgi.master_fifo_slot = 1; announce_fifo; } -+static void uwsgi_fifo_set_slot_two(int _) { uwsgi.master_fifo_slot = 2; announce_fifo; } -+static void uwsgi_fifo_set_slot_three(int _) { uwsgi.master_fifo_slot = 3; announce_fifo; } -+static void uwsgi_fifo_set_slot_four(int _) { uwsgi.master_fifo_slot = 4; announce_fifo; } -+static void uwsgi_fifo_set_slot_five(int _) { uwsgi.master_fifo_slot = 5; announce_fifo; } -+static void uwsgi_fifo_set_slot_six(int _) { uwsgi.master_fifo_slot = 6; announce_fifo; } -+static void uwsgi_fifo_set_slot_seven(int _) { uwsgi.master_fifo_slot = 7; announce_fifo; } -+static void uwsgi_fifo_set_slot_eight(int _) { uwsgi.master_fifo_slot = 8; announce_fifo; } -+static void uwsgi_fifo_set_slot_nine(int _) { uwsgi.master_fifo_slot = 9; announce_fifo; } - --static void subscriptions_blocker() { -+static void subscriptions_blocker(int _) { - if (uwsgi.subscriptions_blocked) { - uwsgi_log_verbose("subscriptions re-enabled\n"); - uwsgi.subscriptions_blocked = 0; -@@ -48,7 +48,7 @@ - } - } - --static void emperor_rescan() { -+static void emperor_rescan(int _) { - if (uwsgi.emperor_pid > 0) { - if (kill(uwsgi.emperor_pid, SIGWINCH)) { - uwsgi_error("emperor_rescan()/kill()"); -diff -uNr a/core/logging.c b/core/logging.c ---- a/core/logging.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/logging.c 2025-01-24 19:38:12.555044665 +0100 -@@ -509,10 +509,10 @@ - } - - if (need_rotation) { -- uwsgi_log_rotate(); -+ uwsgi_log_rotate(0); - } - else if (need_reopen) { -- uwsgi_log_reopen(); -+ uwsgi_log_reopen(0); - } - } - -@@ -552,13 +552,13 @@ - free(rot_name); - } - --void uwsgi_log_rotate() { -+void uwsgi_log_rotate(int _) { - if (!uwsgi.logfile) - return; - uwsgi_log_do_rotate(uwsgi.logfile, uwsgi.log_backupname, uwsgi.shared->logsize, uwsgi.original_log_fd); - } - --void uwsgi_log_reopen() { -+void uwsgi_log_reopen(int _) { - char message[1024]; - if (!uwsgi.logfile) return; - int ret = snprintf(message, 1024, "[%d] logsize: %llu, triggering log-reopen...\n", (int) uwsgi_now(), (unsigned long long) uwsgi.shared->logsize); -diff -uNr a/core/master.c b/core/master.c ---- a/core/master.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/master.c 2025-01-24 19:44:56.074389538 +0100 -@@ -26,7 +26,7 @@ - if (uwsgi.vassal_sos) { - if (uwsgi.current_time - last_sos > uwsgi.vassal_sos) { - uwsgi_log_verbose("asking Emperor for reinforcements (overload: %llu)...\n", (unsigned long long) ushared->overloaded); -- vassal_sos(); -+ vassal_sos(0); - last_sos = uwsgi.current_time; - } - } -@@ -294,12 +294,12 @@ - if (uwsgi.shared->backlog >= (uint64_t) uwsgi.vassal_sos_backlog) { - // ask emperor for help - uwsgi_log_verbose("asking Emperor for reinforcements (backlog: %llu)...\n", (unsigned long long) uwsgi.shared->backlog); -- vassal_sos(); -+ vassal_sos(0); - } - } - } - --void vassal_sos() { -+void vassal_sos(int _) { - if (!uwsgi.has_emperor) { - uwsgi_log("[broodlord] instance not governed by an Emperor !!!\n"); - return; -@@ -835,19 +835,19 @@ - touched = uwsgi_check_touches(uwsgi.touch_workers_reload); - if (touched) { - uwsgi_log_verbose("*** %s has been touched... workers reload !!! ***\n", touched); -- uwsgi_reload_workers(); -+ uwsgi_reload_workers(0); - continue; - } - touched = uwsgi_check_touches(uwsgi.touch_mules_reload); - if (touched) { - uwsgi_log_verbose("*** %s has been touched... mules reload !!! ***\n", touched); -- uwsgi_reload_mules(); -+ uwsgi_reload_mules(0); - continue; - } - touched = uwsgi_check_touches(uwsgi.touch_spoolers_reload); - if (touched) { - uwsgi_log_verbose("*** %s has been touched... spoolers reload !!! ***\n", touched); -- uwsgi_reload_spoolers(); -+ uwsgi_reload_spoolers(0); - continue; - } - touched = uwsgi_check_touches(uwsgi.touch_chain_reload); -@@ -1090,7 +1090,7 @@ - // never here - } - --void uwsgi_reload_workers() { -+void uwsgi_reload_workers(int _) { - int i; - uwsgi_block_signal(SIGHUP); - for (i = 1; i <= uwsgi.numproc; i++) { -@@ -1101,7 +1101,7 @@ - uwsgi_unblock_signal(SIGHUP); - } - --void uwsgi_reload_mules() { -+void uwsgi_reload_mules(int _) { - int i; - - uwsgi_block_signal(SIGHUP); -@@ -1113,7 +1113,7 @@ - uwsgi_unblock_signal(SIGHUP); - } - --void uwsgi_reload_spoolers() { -+void uwsgi_reload_spoolers(int _) { - struct uwsgi_spooler *us; - - uwsgi_block_signal(SIGHUP); -@@ -1127,7 +1127,7 @@ - uwsgi_unblock_signal(SIGHUP); - } - --void uwsgi_chain_reload() { -+void uwsgi_chain_reload(int _) { - if (!uwsgi.status.chain_reloading) { - uwsgi_log_verbose("chain reload starting...\n"); - uwsgi.status.chain_reloading = 1; -@@ -1137,7 +1137,7 @@ - } - } - --void uwsgi_brutally_reload_workers() { -+void uwsgi_brutally_reload_workers(int _) { - int i; - for (i = 1; i <= uwsgi.numproc; i++) { - if (uwsgi.workers[i].pid > 0) { -diff -uNr a/core/master_utils.c b/core/master_utils.c ---- a/core/master_utils.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/master_utils.c 2025-01-24 19:49:28.710316162 +0100 -@@ -2,7 +2,7 @@ - - extern struct uwsgi_server uwsgi; - --void worker_wakeup() { -+void worker_wakeup(int sn) { - } - - uint64_t uwsgi_worker_exceptions(int wid) { -@@ -1725,7 +1725,7 @@ - add_reload_fds(uwsgi.brutal_reload_on_fd, "brutal"); - } - --void uwsgi_refork_master() { -+void uwsgi_refork_master(int _) { - pid_t pid = fork(); - if (pid < 0) { - uwsgi_error("uwsgi_refork_master()/fork()"); -@@ -1746,15 +1746,15 @@ - exit(1); - } - --void uwsgi_cheaper_increase() { -+void uwsgi_cheaper_increase(int _) { - uwsgi.cheaper_fifo_delta++; - } - --void uwsgi_cheaper_decrease() { -+void uwsgi_cheaper_decrease(int _) { - uwsgi.cheaper_fifo_delta--; - } - --void uwsgi_go_cheap() { -+void uwsgi_go_cheap(int _) { - int i; - int waitpid_status; - if (uwsgi.status.is_cheap) return; -diff -uNr a/core/spooler.c b/core/spooler.c ---- a/core/spooler.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/spooler.c 2025-01-24 19:56:28.472783607 +0100 -@@ -12,7 +12,7 @@ - static uint64_t wakeup = 0; - - // function to allow waking up the spooler if blocked in event_wait --void spooler_wakeup() { -+void spooler_wakeup(int sn) { - wakeup++; - } - -diff -uNr a/core/uwsgi.c b/core/uwsgi.c ---- a/core/uwsgi.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/core/uwsgi.c 2025-01-24 19:59:45.448471107 +0100 -@@ -4957,7 +4957,7 @@ - exit(0); - } - --void uwsgi_update_pidfiles() { -+void uwsgi_update_pidfiles(int _) { - if (uwsgi.pidfile) { - uwsgi_write_pidfile(uwsgi.pidfile); - } -diff -uNr a/plugins/fiber/fiber.c b/plugins/fiber/fiber.c ---- a/plugins/fiber/fiber.c 2024-10-26 11:59:26.000000000 +0200 -+++ b/plugins/fiber/fiber.c 2025-01-24 20:18:47.222902654 +0100 -@@ -15,12 +15,12 @@ - }; - - --VALUE uwsgi_fiber_request() { -+VALUE uwsgi_fiber_request(VALUE yielded_arg, VALUE callback_arg, int argc, const VALUE *argv, VALUE blockarg) { - async_schedule_to_req_green(); - return Qnil; - } - --VALUE rb_fiber_schedule_to_req() { -+VALUE rb_fiber_schedule_to_req(VALUE args) { - int id = uwsgi.wsgi_req->async_id; - - if (!uwsgi.wsgi_req->suspended) { diff -uNr a/plugins/pty/pty.c b/plugins/pty/pty.c --- a/plugins/pty/pty.c 2024-10-26 11:59:26.000000000 +0200 +++ b/plugins/pty/pty.c 2025-01-24 20:04:55.952597269 +0100 @@ -269,7 +6,7 @@ diff -uNr a/plugins/pty/pty.c b/plugins/pty/pty.c } -static void uwsgi_pty_winch() { -+static void uwsgi_pty_winch(int _) { ++static void uwsgi_pty_winch(int signum) { // 2 uwsgi packets char uwsgi_pkt[8]; #ifdef TIOCGWINSZ @@ -294,48 +31,3 @@ diff -uNr a/plugins/tuntap/tuntap.c b/plugins/tuntap/tuntap.c if (!utt.routers) return; -diff -uNr a/uwsgi.h b/uwsgi.h ---- a/uwsgi.h 2024-10-26 11:59:26.000000000 +0200 -+++ b/uwsgi.h 2025-01-24 20:44:03.648790992 +0100 -@@ -4787,20 +4787,20 @@ - int uwsgi_master_fifo_manage(int); - - void uwsgi_log_do_rotate(char *, char *, off_t, int); --void uwsgi_log_rotate(); --void uwsgi_log_reopen(); --void uwsgi_reload_workers(); --void uwsgi_reload_mules(); --void uwsgi_reload_spoolers(); --void uwsgi_chain_reload(); --void uwsgi_refork_master(); --void uwsgi_update_pidfiles(); -+void uwsgi_log_rotate(int); -+void uwsgi_log_reopen(int); -+void uwsgi_reload_workers(int); -+void uwsgi_reload_mules(int); -+void uwsgi_reload_spoolers(int); -+void uwsgi_chain_reload(int); -+void uwsgi_refork_master(int); -+void uwsgi_update_pidfiles(int); - void gracefully_kill_them_all(int); --void uwsgi_brutally_reload_workers(); -+void uwsgi_brutally_reload_workers(int); - --void uwsgi_cheaper_increase(); --void uwsgi_cheaper_decrease(); --void uwsgi_go_cheap(); -+void uwsgi_cheaper_increase(int); -+void uwsgi_cheaper_decrease(int); -+void uwsgi_go_cheap(int); - - char **uwsgi_split_quoted(char *, size_t, char *, size_t *); - -@@ -4987,7 +4987,7 @@ - - int uwsgi_notify_socket_manage(int); - int uwsgi_notify_msg(char *, char *, size_t); --void vassal_sos(); -+void vassal_sos(int); - - int uwsgi_wait_for_fs(char *, int); - int uwsgi_wait_for_mountpoint(char *); From f6a6568654ed64290635e2a2142027f40440df32 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 3 Jun 2025 15:52:55 +0200 Subject: [PATCH 415/427] Rebuilt for Python 3.14 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 17ba2cb..65df39b 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.29 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Tue Jun 03 2025 Python Maint - 2.0.29-2 +- Rebuilt for Python 3.14 + * Sat Apr 12 2025 Ralf Ertzinger - 2.0.29-1 - Update to 2.0.29 From 7fdcfd0cd4fcba663aae9158b19b07dfbedd1199 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sun, 8 Jun 2025 18:37:32 +0200 Subject: [PATCH 416/427] Update to 2.0.30 --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 9 ++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 0561e1e..3fb1840 100644 --- a/.gitignore +++ b/.gitignore @@ -66,3 +66,5 @@ /uwsgi-docs-9606cb0.tar.gz /2.0.29.tar.gz /uwsgi-docs-b9da5ea.tar.gz +/2.0.30.tar.gz +/uwsgi-docs-f728a25.tar.gz diff --git a/sources b/sources index 4451a97..3f730d8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (2.0.29.tar.gz) = 6aaaaae9e067814e430dd80e5ac44e806f937c84f0b38a7ac3f399e92a392a426fe41c23c76371203a31625f985a3f5b397a3294b634c1c7a1280981023bdad1 -SHA512 (uwsgi-docs-b9da5ea.tar.gz) = 94756864572994feb0387d7712bc19538f5a8cf6eed57c6171ee12cb8b7a3e268b2d9695c0d4205c4972401fd2a246badfbb118880f3e531c2803dd3431c8420 +SHA512 (2.0.30.tar.gz) = a8ff667e55956285427d440cf40c552ad6628c192e3b4d0a3d8d5f96aec09c18466feb64f4b305d84194a7d5e2bb15a49a1d6b807af538e474e72867ceb7f644 +SHA512 (uwsgi-docs-f728a25.tar.gz) = d9c43572ea325fc841b929d82f24fd2ec6e798899b7f0d2a74936ad51967f71c09d759f1a2cfb7708a2f9828ac46d06c50c81c9a72828c160231fa281f317415 diff --git a/uwsgi.spec b/uwsgi.spec index 65df39b..b7c1705 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit b9da5eadc78985ec6dff7e3a755ca7be42f9f4c2 +%global commit f728a2505313a928413af07720db7b261e8adcd4 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -249,8 +249,8 @@ %endif Name: uwsgi -Version: 2.0.29 -Release: 2%{?dist} +Version: 2.0.30 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Sun Jun 08 2025 Ralf Ertzinger - 2.0.30-1 +- Update to 2.0.30 + * Tue Jun 03 2025 Python Maint - 2.0.29-2 - Rebuilt for Python 3.14 From 14c9d4c7a604d9a891aef8204487a3aa7c8e2772 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 9 Jun 2025 07:43:54 +0200 Subject: [PATCH 417/427] Rebuilt for Python 3.14 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index b7c1705..b51c235 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.30 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Mon Jun 09 2025 Python Maint - 2.0.30-2 +- Rebuilt for Python 3.14 + * Sun Jun 08 2025 Ralf Ertzinger - 2.0.30-1 - Update to 2.0.30 From 0d453e9ae85969e96ee89b3ab13d196e95790ce2 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 8 Jul 2025 14:25:37 +0200 Subject: [PATCH 418/427] Perl 5.42 rebuild --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index b51c235..7d8dfd2 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.30 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Tue Jul 08 2025 Jitka Plesnikova - 2.0.30-3 +- Perl 5.42 rebuild + * Mon Jun 09 2025 Python Maint - 2.0.30-2 - Rebuilt for Python 3.14 From 1e2ce24bb0e5b19136360a1d70c997de2f7aba6b Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Thu, 24 Jul 2025 16:11:11 +0200 Subject: [PATCH 419/427] Disable perl-Coro for rawhide, as this blocks rebuilding for perl 5.42 (see https://bugzilla.redhat.com/show_bug.cgi?id=2379448) --- uwsgi.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index 7d8dfd2..dbb8684 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -26,7 +26,7 @@ %bcond_without tuntap %bcond_without zeromq %bcond_without perl -%bcond_without perlcoro +%bcond_with perlcoro %bcond_without glusterfs %bcond_without php %bcond_without pq @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.30 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,10 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Thu Jul 24 2025 Ralf Ertzinger - 2.0.30-4 +- Disable perl-Coro for rawhide, as this blocks rebuilding + for perl 5.42 (see https://bugzilla.redhat.com/show_bug.cgi?id=2379448) + * Tue Jul 08 2025 Jitka Plesnikova - 2.0.30-3 - Perl 5.42 rebuild From 06e8062cb468efd5e498b8c2eea38383ac6ed92b Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 15 Aug 2025 15:21:55 +0200 Subject: [PATCH 420/427] Rebuilt for Python 3.14.0rc2 bytecode --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index dbb8684..e682c26 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -250,7 +250,7 @@ Name: uwsgi Version: 2.0.30 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -1962,6 +1962,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Fri Aug 15 2025 Python Maint - 2.0.30-5 +- Rebuilt for Python 3.14.0rc2 bytecode + * Thu Jul 24 2025 Ralf Ertzinger - 2.0.30-4 - Disable perl-Coro for rawhide, as this blocks rebuilding for perl 5.42 (see https://bugzilla.redhat.com/show_bug.cgi?id=2379448) From 305e1c563fe8c061bf748b964c904750c45c511b Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 20 Aug 2025 20:35:03 +0200 Subject: [PATCH 421/427] Add python3.13 module for EL9 --- uwsgi.spec | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 74 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index e682c26..3269d84 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -160,6 +160,14 @@ %global python3_alternate2_version 3.12 %global python3_alternate2_version_nodots 312 %endif +%bcond_without python3_alternate3 +%if %{with python3_alternate3} +%global python3_alternate3_pkgname python3.13 +%global __python3_alternate3 python3.13 +%global python3_alternate3_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate3} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate3_version 3.13 +%global python3_alternate3_version_nodots 313 +%endif #EL9 endif %endif @@ -239,6 +247,9 @@ %if %{with python3_alternate2} %global __python %{__python3_alternate2} %else +%if %{with python3_alternate3} +%global __python %{__python3_alternate3} +%else %if %{with python2} %global __python %{__python2} %else @@ -247,10 +258,11 @@ %endif %endif %endif +%endif Name: uwsgi Version: 2.0.30 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -307,6 +319,9 @@ BuildRequires: %{python3_alternate1_pkgname}-devel %if %{with python3_alternate2} BuildRequires: %{python3_alternate2_pkgname}-devel %endif +%if %{with python3_alternate3} +BuildRequires: %{python3_alternate3_pkgname}-devel +%endif %if %{with glusterfs} BuildRequires: glusterfs-devel, glusterfs-api-devel %endif @@ -451,6 +466,17 @@ The uwsgidecorators Python %{python3_alternate2_version} module provides higher-level access to the uWSGI API. %endif +%if %{with python3_alternate3} +%package -n %{python3_alternate3_pkgname}-uwsgidecorators +Summary: Python %{python3_alternate3_version} decorators providing access to the uwsgi API +Requires: uwsgi = %{version}-%{release} +Requires: uwsgi-plugin-python%{python3_alternate3_version_nodots} = %{version}-%{release} + +%description -n %{python3_alternate3_pkgname}-uwsgidecorators +The uwsgidecorators Python %{python3_alternate3_version} module provides +higher-level access to the uWSGI API. +%endif + %package -n uwsgi-docs Summary: uWSGI - Documentation Requires: uwsgi @@ -810,6 +836,15 @@ Requires: uwsgi-plugin-python%{python3_alternate2_version_nodots} = %{version}-% This package contains the Python %{python3_alternate2_version} gevent plugin for uWSGI %endif +%if %{with python3_alternate3} +%package -n uwsgi-plugin-python%{python3_alternate3_version_nodots}-gevent +Summary: uWSGI - Plugin for Python %{python3_alternate3_version} GEvent support +Requires: uwsgi-plugin-python%{python3_alternate3_version_nodots} = %{version}-%{release}, libevent + +%description -n uwsgi-plugin-python%{python3_alternate3_version_nodots}-gevent +This package contains the Python %{python3_alternate3_version} gevent plugin for uWSGI +%endif + %if %{with glusterfs} %package -n uwsgi-plugin-glusterfs Summary: uWSGI - Plugin for GlusterFS support @@ -978,6 +1013,15 @@ Requires: %{python3_alternate2_pkgname}, uwsgi-plugin-common = %{version}-%{rele This package contains the Python %{python3_alternate2_version} plugin for uWSGI %endif +%if %{with python3_alternate3} +%package -n uwsgi-plugin-python%{python3_alternate3_version_nodots} +Summary: uWSGI - Plugin for Python %{python3_alternate3_version} support +Requires: %{python3_alternate3_pkgname}, uwsgi-plugin-common = %{version}-%{release} + +%description -n uwsgi-plugin-python%{python3_alternate3_version_nodots} +This package contains the Python %{python3_alternate3_version} plugin for uWSGI +%endif + %if %{with ruby_rack} %package -n uwsgi-plugin-rack Summary: uWSGI - Ruby rack plugin @@ -1363,6 +1407,10 @@ CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate1} uwsgic CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate2} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_alternate2_version_nodots} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate2} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_alternate2_version_nodots}_gevent %endif +%if %{with python3_alternate3} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate3} uwsgiconfig.py --verbose --plugin plugins/python fedora python%{python3_alternate3_version_nodots} +CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python3_alternate3} uwsgiconfig.py --verbose --plugin plugins/gevent fedora python%{python3_alternate3_version_nodots}_gevent +%endif %if %{with mongodblibs} CFLAGS="%{optflags} -Wno-unused-but-set-variable" %{__python} uwsgiconfig.py --verbose --plugin plugins/mongodblog fedora CFLAGS="%{optflags} -Wno-unused-but-set-variable -std=gnu++11 -Wno-error" %{__python2} uwsgiconfig.py --verbose --plugin plugins/stats_pusher_mongodb fedora @@ -1487,6 +1535,12 @@ install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_alternate2_siteli %py_byte_compile %{__python3_alternate2} %{buildroot}%{python3_alternate2_sitelib}/uwsgidecorators.py %endif %endif +%if %{with python3_alternate3} +install -D -p -m 0644 uwsgidecorators.py %{buildroot}%{python3_alternate3_sitelib}/uwsgidecorators.py +%if %{manual_py_compile} == 1 +%py_byte_compile %{__python3_alternate3} %{buildroot}%{python3_alternate3_sitelib}/uwsgidecorators.py +%endif +%endif %if %{with java} install -D -p -m 0644 plugins/jvm/uwsgi.jar %{buildroot}%{_javadir}/uwsgi.jar %endif @@ -1549,6 +1603,12 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %{python3_alternate2_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_alternate2_version_nodots}*.py* %endif +%if %{with python3_alternate3} +%files -n %{python3_alternate3_pkgname}-uwsgidecorators +%{python3_alternate3_sitelib}/uwsgidecorators.py +%{python3_alternate3_sitelib}/__pycache__/uwsgidecorators.cpython-%{python3_alternate3_version_nodots}*.py* +%endif + %files -n uwsgi-docs %doc docs @@ -1721,6 +1781,11 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %{_libdir}/uwsgi/python%{python3_alternate2_version_nodots}_gevent_plugin.so %endif +%if %{with python3_alternate3} +%files -n uwsgi-plugin-python%{python3_alternate3_version_nodots}-gevent +%{_libdir}/uwsgi/python%{python3_alternate3_version_nodots}_gevent_plugin.so +%endif + %if %{with glusterfs} %files -n uwsgi-plugin-glusterfs %{_libdir}/uwsgi/glusterfs_plugin.so @@ -1805,6 +1870,11 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %{_libdir}/uwsgi/python%{python3_alternate2_version_nodots}_plugin.so %endif +%if %{with python3_alternate3} +%files -n uwsgi-plugin-python%{python3_alternate3_version_nodots} +%{_libdir}/uwsgi/python%{python3_alternate3_version_nodots}_plugin.so +%endif + %if %{with ruby_rack} %files -n uwsgi-plugin-rack %{_libdir}/uwsgi/rack_plugin.so @@ -1962,6 +2032,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Tue Aug 19 2025 Ralf Ertzinger - 2.0.30-6 +- Add python3.13 module for EL9 + * Fri Aug 15 2025 Python Maint - 2.0.30-5 - Rebuilt for Python 3.14.0rc2 bytecode From fce9901ade52fe029f1d1cd63e99bb6c0a340424 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 19 Sep 2025 15:01:52 +0200 Subject: [PATCH 422/427] Rebuilt for Python 3.14.0rc3 bytecode --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 3269d84..790480e 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -262,7 +262,7 @@ Name: uwsgi Version: 2.0.30 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -2032,6 +2032,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Fri Sep 19 2025 Python Maint - 2.0.30-7 +- Rebuilt for Python 3.14.0rc3 bytecode + * Tue Aug 19 2025 Ralf Ertzinger - 2.0.30-6 - Add python3.13 module for EL9 From 451e6fd8be531397ba8abcf742efaf50176a5078 Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sun, 12 Oct 2025 16:53:42 +0200 Subject: [PATCH 423/427] Update to 2.0.31, drop merged patches --- .gitignore | 2 ++ sources | 4 ++-- uwsgi.spec | 11 ++++++----- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 3fb1840..cceb6ff 100644 --- a/.gitignore +++ b/.gitignore @@ -68,3 +68,5 @@ /uwsgi-docs-b9da5ea.tar.gz /2.0.30.tar.gz /uwsgi-docs-f728a25.tar.gz +/uwsgi-docs-5784c30.tar.gz +/2.0.31.tar.gz diff --git a/sources b/sources index 3f730d8..6394bca 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (2.0.30.tar.gz) = a8ff667e55956285427d440cf40c552ad6628c192e3b4d0a3d8d5f96aec09c18466feb64f4b305d84194a7d5e2bb15a49a1d6b807af538e474e72867ceb7f644 -SHA512 (uwsgi-docs-f728a25.tar.gz) = d9c43572ea325fc841b929d82f24fd2ec6e798899b7f0d2a74936ad51967f71c09d759f1a2cfb7708a2f9828ac46d06c50c81c9a72828c160231fa281f317415 +SHA512 (uwsgi-docs-5784c30.tar.gz) = 4f966da4a867e45043a0eb4a123b439c8ab1f7ce6e8b32d770545ff7fae586e4e7dd011106aa6ed0ec82a6c6192937e0fd12ed681443332205566fc329e11cd8 +SHA512 (2.0.31.tar.gz) = d4d327f36455438e165298cb5a7d483c951f4acd3d834b46ceeda105bd3664792ead226b02e06db62e92c210544778119bf75a55d9d4f30f8fba896c7de51e6d diff --git a/uwsgi.spec b/uwsgi.spec index 790480e..3359e4c 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -1,5 +1,5 @@ # Documentation sources: -%global commit f728a2505313a928413af07720db7b261e8adcd4 +%global commit 5784c30866a94942a5200db4d5f6c2850afb1caa %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global docrepo uwsgi-docs @@ -261,8 +261,8 @@ %endif Name: uwsgi -Version: 2.0.30 -Release: 7%{?dist} +Version: 2.0.31 +Release: 1%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -293,7 +293,6 @@ Patch6: uwsgi_v8-314_compatibility.patch Patch7: uwsgi_fix_mono.patch Patch13: uwsgi_fix_chroot_chdir.patch Patch14: uwsgi_python312-2.patch -Patch15: uwsgi_gcc15-signal-handler.patch BuildRequires: curl, libxml2-devel, libuuid-devel, jansson-devel BuildRequires: libyaml-devel, ruby-devel @@ -1385,7 +1384,6 @@ cp -p %{SOURCE5} README.Fedora %endif %patch -P13 -p1 %patch -P14 -p1 -%patch -P15 -p1 %build CFLAGS="%{optflags} -Wno-error -Wno-unused-but-set-variable -fPIC" %{__python} uwsgiconfig.py --verbose --build fedora.ini @@ -2032,6 +2030,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Sun Oct 12 2025 Ralf Ertzinger - 2.0.31-1 +- Update to 2.0.31, drop merged patches + * Fri Sep 19 2025 Python Maint - 2.0.30-7 - Rebuilt for Python 3.14.0rc3 bytecode From b2673a41cc434fed2eb1a4a4a8952b5fa91b646c Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Wed, 15 Oct 2025 07:59:30 +0200 Subject: [PATCH 424/427] rebuild for https://fedoraproject.org/wiki/Changes/php85 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 3359e4c..decf399 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -262,7 +262,7 @@ Name: uwsgi Version: 2.0.31 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -2030,6 +2030,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Wed Oct 15 2025 Remi Collet - 2.0.31-2 +- rebuild for https://fedoraproject.org/wiki/Changes/php85 + * Sun Oct 12 2025 Ralf Ertzinger - 2.0.31-1 - Update to 2.0.31, drop merged patches From 87e2b9fbb4ab9498c5f49e87addb776fe0b007fe Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Wed, 26 Nov 2025 21:49:21 +0100 Subject: [PATCH 425/427] Fix path errors for EPEL9 uwsgidecorator packages --- uwsgi.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/uwsgi.spec b/uwsgi.spec index decf399..f32fc84 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -148,7 +148,7 @@ %if %{with python3_alternate1} %global python3_alternate1_pkgname python3.11 %global __python3_alternate1 python3.11 -%global python3_alternate1_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate1} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate1_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate1} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))") %global python3_alternate1_version 3.11 %global python3_alternate1_version_nodots 311 %endif @@ -156,7 +156,7 @@ %if %{with python3_alternate2} %global python3_alternate2_pkgname python3.12 %global __python3_alternate2 python3.12 -%global python3_alternate2_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate2} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate2_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate2} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))") %global python3_alternate2_version 3.12 %global python3_alternate2_version_nodots 312 %endif @@ -164,7 +164,7 @@ %if %{with python3_alternate3} %global python3_alternate3_pkgname python3.13 %global __python3_alternate3 python3.13 -%global python3_alternate3_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate3} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))")} +%global python3_alternate3_sitelib %(RPM_BUILD_ROOT= %{__python3_alternate3} -Ic "import sysconfig; print(sysconfig.get_path('purelib', vars={'platbase': '%{_prefix}', 'base': '%{_prefix}'}))") %global python3_alternate3_version 3.13 %global python3_alternate3_version_nodots 313 %endif @@ -262,7 +262,7 @@ Name: uwsgi Version: 2.0.31 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -2030,6 +2030,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Wed Nov 26 2025 Ralf Ertzinger - 2.0.31-3 +- Fix path errors for EPEL9 uwsgidecorator packages + * Wed Oct 15 2025 Remi Collet - 2.0.31-2 - rebuild for https://fedoraproject.org/wiki/Changes/php85 From 4f78b765d16702a889e6149633461ba77ae46bd8 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Thu, 8 Jan 2026 20:15:17 +0900 Subject: [PATCH 426/427] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0 --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index f32fc84..338f608 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -262,7 +262,7 @@ Name: uwsgi Version: 2.0.31 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -2030,6 +2030,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Thu Jan 08 2026 Mamoru TASAKA - 2.0.31-4 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0 + * Wed Nov 26 2025 Ralf Ertzinger - 2.0.31-3 - Fix path errors for EPEL9 uwsgidecorator packages From dd58e131b7f1e4ab706a7ff635210214351a5a7e Mon Sep 17 00:00:00 2001 From: Ralf Ertzinger Date: Sun, 11 Jan 2026 18:29:57 +0100 Subject: [PATCH 427/427] Rebuild for new gccgo libraries --- uwsgi.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/uwsgi.spec b/uwsgi.spec index 338f608..424e718 100644 --- a/uwsgi.spec +++ b/uwsgi.spec @@ -262,7 +262,7 @@ Name: uwsgi Version: 2.0.31 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, self-healing, application container server # uwsgi is licensed under GPLv2 with a linking exception # docs are licensed under MIT @@ -2030,6 +2030,9 @@ install -m0644 -D %{SOURCE8} %{buildroot}%{_sysusersdir}/uwsgi.conf %changelog +* Sun Jan 11 2026 Ralf Ertzinger - 2.0.31-5 +- Rebuild for new gccgo libraries + * Thu Jan 08 2026 Mamoru TASAKA - 2.0.31-4 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0